专门做二手房车的网站,网页设计与制作教材电子版,系统开发报价清单明细,河南造价信息网官网文章目录
前言
一、二分查找法#xff08;LeetCode--704#xff09;
二、移除元素#xff08;LeetCode--27#xff09; 前言
跟随代码随想录#xff0c;学习数组相关的算法题目#xff0c;记录学习过程中的tips。 一、二分查找法#xff08;LeetCode--704#xff0…文章目录
前言
一、二分查找法LeetCode--704
二、移除元素LeetCode--27 前言
跟随代码随想录学习数组相关的算法题目记录学习过程中的tips。 一、二分查找法LeetCode--704
【1】算法功能在有序数组中查找指定元素时间复杂度为O(log N)。
【2】算法思想定义首尾指针分别指向数组的首尾元素若中间元素的值小于目标值则将首指针移动至中间元素右侧若中间元素的值大于目标值则将尾指针移动至中间元素的左侧若相等则返回下标。
【3】代码实现在左闭右闭的区间内查找。 class Solution {
public:int search(vectorint nums, int target) {int low 0, high nums.size() - 1;while (low high) {int mid (low high) / 2;if (nums[mid] target) {return mid;} else if (nums[mid] target) {low mid 1;} else {high mid - 1;}}return -1;}
};
【4】易错点①注意while循环的判定条件②注意high的更新条件。 二、移除元素LeetCode--27
在之前的刷题中已经遇到过且代码随想录的解法与当时我的初次解法相同见【LeetCode算法】第27题移除元素-CSDN博客。