面試題 消失的數字

2021-10-06 20:45:25 字數 477 閱讀 4377

題目是: 陣列nums包含從0到n的所有整數,但其中缺了乙個。請編寫**找出那個缺失的整數。要求時間複雜度為o(n).

這道題我首先想到的是將這個陣列從小到大排序(時間複雜度為o(n)的排序演算法),然後用乙個初始化為0的變數j跟著陣列的下標走,當變數的值與陣列的對應下標位置的值不相等時,此時變數j的值即為"消失的數字".

後面又想到了一種"桶"的方法,這種需要消耗額外的記憶體,該方法不多說了,**如下:

int

missingnumber

(int

*nums,

int numssize)

for(

int i=

0;i)for

(int i=

0;i<=numssize;i++)}

free

(arr)

;//釋放開闢的記憶體

return0;

}

LeetCode 面試題 17 04 消失的數字

陣列nums包含從0到n的所有整數,但其中缺了乙個。請編寫 找出那個缺失的整數。你有辦法在o n 時間內完成嗎?注意 本題相對書上原題稍作改動 示例 1 輸入 3,0,1 輸出 2 class solution def missingnumber self,nums list int int 雜湊表...

面試題 找單獨數字

陣列a中,除了某乙個數字x之外,其他數字都出現了 三次,而x出現了 一次。請給出最快的方法,找到x。這道題是 陣列中除了乙個數字外,其他數字都出現了兩次這道題的公升級版,在其他數字都是兩個的陣列中找出單獨的數字,由於兩個相同的數字經過異或運算後為0,所以我們只要讓陣列中的每乙個數字相互異或就能找到那...

Python 數字聯盟 面試題

1.寫出輸出結果 class myclass class name xiaobai def init self,args if args self.class name args 0 def print name self print this class name format self.clas...