码迷,mamicode.com
首页 > 其他好文 > 详细

剑指 Offer 53 - II. 0~n-1中缺失的数字

时间:2020-07-29 21:22:09      阅读:74      评论:0      收藏:0      [点我收藏+]

标签:思路分析   width   lang   ret   排序   tco   题解   二分   problems   


本题 题目链接

题目描述

技术图片

我的题解

二分法

技术图片

思路分析

  • 排序数组中的搜索问题,首先想到二分法
    • 当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中缺失的数字

标签:思路分析   width   lang   ret   排序   tco   题解   二分   problems   

原文地址:https://www.cnblogs.com/duduwy/p/13390555.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!