目录
今天的时间主要花费在了装IDEA,配置插件等等。
704自己做的时候出了点问题,27还蛮顺的。
看了题解的视频后感觉还是学到不少东西。
704. 二分查找
704的下标法学到了!
class Solution {
public int search(int[] nums, int target) {
// 方法1:左闭右闭
// if (target < nums[0] || target > nums[nums.length - 1]) {
// return -1;
// }
// int left = 0, right = nums.length - 1;
// while (left <= right) {
// int middle = (left + right) / 2;
// if (target > nums[middle]) {
// left = middle + 1;
// } else if (target < nums[middle]) {
// right = middle - 1;
// } else {
// return middle;
// }
// }
// return -1;
// 方法2:左闭右开
int left = 0;
int right = nums.length;
while (left < right) {
int middle = (left + right) / 2;
if (target > nums[middle]) {
left = middle + 1;
} else if (target < nums[middle]) {
right = middle;
} else {
return middle;
}
}
return -1;
}
}
27. 移除元素
27用了和题解不太一样的方法,不知道还能怎么优化。
class Solution {
public int removeElement(int[] nums, int val) {
int[] newNums = nums;
int k = 0;
for (int i = 0; i < nums.length; i++) {
if (nums[i] != val) {
newNums[k] = nums[i];
k++;
}
}
nums = newNums;
return k;
}
}
希望第二天继续加油!