代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素

187 阅读1分钟

今天的题比较简单没遇到什么困难,用时20分钟

704. 二分查找

题目链接:leetcode.cn/problems/bi… 我用的是左闭右闭的做法,问题也是最标准的二分问题,还是比较简单的,主要是复习了二分怎么写

class Solution {
    public int search(int[] nums, int target) {
        int left = 0, right = nums.length - 1;
        while(left <= right) {
            int mid = left + (right - left)/2;
            if(nums[mid] == target) {
                return mid;
            } else if(nums[mid] < target) {
                left = mid + 1; 
            } else {
                right = mid - 1;
            }
        }
        return -1;
    }
}

27. 移除元素

题目链接:leetcode.cn/problems/re… 解法:

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