[剑指offer]面试题第[53-2]题[JAVA][0-n-1中缺失的数字][二分法][暴力法]
生活随笔
收集整理的這篇文章主要介紹了
[剑指offer]面试题第[53-2]题[JAVA][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【解答思路】
1. 遍歷法/暴力法
時間復雜度:O(N) 空間復雜度:O(1)
for (int i = 0; i < nums.length; i++) {if (i != nums[i])return i;}return nums.length;}2. 二分法
時間復雜度:O(logN) 空間復雜度:O(1)
【總結】
1.排序數組中的搜索問題,首先想到 二分法 解決
2.暴力法 注意邊界 合并條件
轉載鏈接:https://leetcode-cn.com/problems/que-shi-de-shu-zi-lcof/solution/mian-shi-ti-53-ii-0n-1zhong-que-shi-de-shu-zi-er-f/
總結
以上是生活随笔為你收集整理的[剑指offer]面试题第[53-2]题[JAVA][0-n-1中缺失的数字][二分法][暴力法]的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: qt-embedded-linux-op
- 下一篇: 【Intellij Idea】设置JDK