Missing Number(Binary Search)

Given an integer array of size N - 1 sorted by ascending order, containing all the numbers from 1 to N except one, find the missing number.

Assumptions

The given array is not null, and N >= 1

Examples

A = {1, 2, 4}, the missing number is 3
A = {1, 2, 3}, the missing number is 4
A = {}, the missing number is 1

class Solution(object):
  def missing(self, array):
    low = 0
    high = len(array) - 1
    if len(array) < 1:
      return 1
    while low <= high:
      mid = (low + high)/2
      for i in xrange(0,len(array)):
        if array[i] != i + 1:
          return i+1
        else:
          i += 1
      return array[-1] + 1
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • rljs by sennchi Timeline of History Part One The Cognitiv...
    sennchi阅读 7,458评论 0 10
  • 主要人物情感解析: 孙兰花,孙家的大姐,她从小就开始肩负起家庭的一种责任,同时她也很少得到别人一种炽热的情感,所以...
    喜马拉雅山上的花阅读 198评论 0 0
  • 亲爱的孩子们: 放假已经十天了,你们一定玩得忘乎所以了吧?到我们班级群里转转,还是我每天必做的事情。可是,里...
    远征雁阅读 534评论 9 16
  • 11月6日星期六,我好紧张,因为我今天要去考级。 我怀着开激动的心情去考了级,在这之前我被我妈教育过,...
    徐寅博阅读 688评论 6 5