网站定向搜索,网站右边跳出的广告怎么做,自己开网店需要什么流程,wordpress托管 安装目录 我们直接看题解吧#xff1a; 审题目事例提示#xff1a; 方法#xff1a; 解题思路#xff08;二分法#xff09;#xff1a; 代码#xff1a; 方法二#xff1a;直接遍历 题目地址 LCR 173. 点名 - 力扣#xff08;LeetCode#xff09; 今天刷点名#xff08… 目录 我们直接看题解吧 审题目事例提示 方法 解题思路二分法 代码 方法二直接遍历 题目地址 LCR 173. 点名 - 力扣LeetCode 今天刷点名缺失的数字大家有兴趣可以点上看看题目要求试着做一下。
我们直接看题解吧
审题目事例提示 record为升序数组 方法 遇到排序数组的搜索问题首先想到二分法 解题思路二分法 依据题意我们可以把数组分为两部分 左子数组record[i]i 右子数组record[i]!i 所以缺失的数字其实就是右子数组的首元素。 初始化i0即左边界,jlength-1即右边界循环二分当ij时跳出循环 ·计算中点m(ij)/2(向下取整) ·record[m]m,即缺失数字在[m1,j],则im1 ·record[m]m即缺失数字在[i,m-1],则jm-1 3、最后跳出循环i指向位置为缺失的数字 代码
class Solution {public int takeAttendance(int[] records) {int i 0, j records.length - 1;while(i j) {int m (i j) / 2;if(records[m] m) i m 1;else j m - 1;}return i;}
} 方法二直接遍历
class Solution {public int missingNumber(int[] nums) {if (nums[0]1) return 0;for (int i 0;inums.length;i){if (nums[i]!i) return i;}return nums.length;}
}