Day01 数组part01| LeetCode 704. 二分查找,27. 移除元素,977. 有序数组的平方

数组理论基础

  • 数组是存放在连续空间上的相同类型数据的集合
  • 数组的元素是不能删的,只能覆盖

二分查找

704. 二分查找

class Solution {
    public int search(int[] nums, int target) {


        int i=0,j=nums.length-1;
        while(i<j)
        {
            int mid=(i+j)/2;
            if(target<nums[mid])
            {
                j=mid-1;
            }
            else if(target>nums[mid])
            {
                i=mid+1;
            }
            else
            {
                return mid;
            }

        }
        return -1;

    }
}

移除元素

27. 移除元素

class Solution {
    public int removeElement(int[] nums, int val) {
        int slowIndex=0;
        for(int fastIndex=0;fastIndex<nums.length;fastIndex++)
        {
            if(nums[fastIndex]!=val)
            {
                nums[slowIndex]=nums[fastIndex];
                slowIndex++;
            }
        }
        return slowIndex;
    }
}

有序数组的平方

977. 有序数组的平方

class Solution {
    public int[] sortedSquares(int[] nums) {
        int index=nums.length-1;
        int []result=new int[nums.length];
            int left=0,right=nums.length-1;
            while(left<=right)
            {
                if(nums[left]*nums[left]<nums[right]*nums[right])
                {
                    result[index]=nums[right]*nums[right];
                    right--;
                    index--;

                }
                else
                {
                   result[index]=nums[left]*nums[left];
                   index--;
                   left++;
                }
            }
            return result;
            
    }
}

posted on 2024-09-02 23:46  FreeDrama  阅读(17)  评论(0)    收藏  举报

导航