题目链接

0 - n-1 中缺失的数字

题目描述

image.png

解题思路

方法一:直接遍历

  1. class Solution {
  2. public int missingNumber(int[] nums) {
  3. int len = nums.length;
  4. for(int i=0; i<len; i++) {
  5. if(nums[i] != i) {
  6. return i;
  7. }
  8. }
  9. return len;
  10. }
  11. }

方法二:二分法

  1. class Solution {
  2. public int missingNumber(int[] nums) {
  3. int i = 0, j = nums.length - 1;
  4. while(i < j) {
  5. int m = (i + j) / 2;
  6. if(nums[m] == m) i = m + 1;
  7. else j = m - 1;
  8. }
  9. return i;
  10. }
  11. }