題目描述
乙個長度為n-1的遞增排序陣列中的所有數字都是唯一的,並且每個數字都在範圍0~n-1之內。在範圍0~n-1內的n個數字中有且只有乙個數字不在該陣列中,請找出這個數字。
示例 1:
輸入: [0,1,3]
輸出: 2
示例 2:
輸入: [0,1,2,3,4,5,6,7,9]
輸出: 8
要點
遞增,有序,特點:丟失前陣列數值等於索引值,丟失後不等,丟失值為丟失後第乙個位置的索引。
有序陣列常用:二分法和雙指標法。
解題思路
二分法,二分查詢mid值是否與索引值相等,直至查詢到丟失後的第乙個位置。
class
solution
else j = mid-1;
//右陣列的首位元素在[i,mid-1]中或者跳出迴圈(此時i值即為右陣列首位元素)
}return i;}}
;
面試題53 II 0 n 1中缺失的數字
題目 乙個長度為n 1的遞增排序陣列中的所有數字都是唯一的,並且每個數字都在範圍0 n 1之內。在範圍0 n 1內的n個數字中有且只有乙個數字不在該陣列中,請找出這個數字。示例 示例 1 輸入 0,1,3 輸出 2 示例 2 輸入 0,1,2,3,4,5,6,7,9 輸出 8 解釋 0,1 表示陣列...
面試題53 II 0 n 1中缺失的數字
題目 乙個長度為n 1的遞增排序陣列中的所有數字都是唯一的,並且每個數字都在範圍0 n 1之內。在範圍0 n 1內的n個數字中有且只有乙個數字不在該陣列中,請找出這個數字。示例1 輸入 0,1,3 輸出 2 方法一 二分法 可以發現規律,如果下標 index nums index 的話,所缺的值在中...
面試題53 II 0 n 1中缺失的數字
乙個長度為n 1的遞增排序陣列中的所有數字都是唯一的,並且每個數字都在範圍0 n 1之內。在範圍0 n 1內的n個數字中有且只有乙個數字不在該陣列中,請找出這個數字。示例 1 輸入 0,1,3 輸出 2 示例 2 輸入 0,1,2,3,4,5,6,7,9 輸出 8 class solution el...