文章詳情頁
java - 面試題:定義一個數組長度是49,在里邊隨機放入1到50中的49個,設計一種最快的算法,求出那個數沒被放入。
瀏覽:89日期:2024-01-23 17:05:33
問題描述
面試題:定義一個數組長度是49,在里邊隨機放入1到50中的49個,設計一種最快的算法,求出那個數沒被放入。
問題解答
回答1:求1到50的和,然后遍歷數組求和,相減,如何
回答2:另建一個長度為50的數組,全部初始化為0,遍歷給定數組,置新建數組下標等于給定數組當前值的位置為1,最后輸出新建數組值為0的下標。這是我的第一反應,坐等更好的辦法。
回答3:用 1 到 50 的和去扣掉所有在數組中的數字:
# array is an array with length 49ans = 1275for i in range(49): ans -= array[i] # ans is the number we want to find
Time Complexity: O(n)Space Complexity: O(1)
我回答過的問題: Python-QA
標簽:
java
排行榜
