剑指 Offer 53 - II. 0~n-1中缺失的数字
Posted duduwy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指 Offer 53 - II. 0~n-1中缺失的数字相关的知识,希望对你有一定的参考价值。
题目描述
我的题解
二分法
思路分析
- 排序数组中的搜索问题,首先想到二分法
- 当nums[center] > center 时,缺少的数在左区间
- 当nums[center] = center 时,缺少的数在右区间
代码如下
public int missingNumber(int[] nums) {
int l = 0, r = nums.length - 1;
while (l <= r) {
int cent = (r + l) / 2;
if (nums[cent] > cent) // 左区间
r = cent - 1;
else // == 右区间
l = cent+1;
}
return r+1;
}
以上是关于剑指 Offer 53 - II. 0~n-1中缺失的数字的主要内容,如果未能解决你的问题,请参考以下文章
剑指Offer面试题53 - II. 0~n-1中缺失的数字