数组理论知识
数组是存放在连续内存空间上的相同类型数据的集合
数组下标都是从0开始
数组内存空间的地址是连续的
704.二分查找
class Solution {
public:
int search(vector<int>& nums, int target) {
int left = 0;
int right = nums.size() - 1;
while (left <= right) {
int middle = (left + right) / 2;
if (nums[middle] > target) {
right = middle - 1;
} elseif (nums[middle] < target) {
left = middle + 1;
} else {
return middle;
}
}
return -1;
}
};
27.移除元素
class Solution {
public:
int removeElement(vector<int>& nums, int val) {
int slow = 0;
for (int fast = 0; fast < nums.size(); fast++) {
if (nums[fast] != val) {
nums[slow] = nums[fast];
slow++;
}
}
return slow;
}
};