在乙個長度為n的陣列裡的所有數字都在0到n-1的範圍內。 陣列中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出陣列中任意乙個重複的數字。 例如,如果輸入長度為7的陣列,那麼對應的輸出是第乙個重複的數字2。
【分析】:由於所有數字都在 0~n-1 之間,若該陣列按照 0、1、2、.......、n-1 的順序來進行排序的話,將不會出現重複的數字。所以將該陣列重新進行排序,讓numbers[i] = i ,這樣當後面出現和前面數字相同時,即為重複的數字。
【**如下】
class solution
for(int i=0;ilength-1)
return false;
}for(int i=0;ielse}}
return false;
}};
03 陣列中重複的數字
在乙個長度為 n 的陣列裡的所有數字都在 0 到 n 1 的範圍內。陣列中某些數字是重複的,但不知道有幾個數字是重複的,也不知道每個數字重複幾次。請找出陣列中任意乙個重複的數字。例如,如果輸入長度為7的陣列,那麼對應的輸出是第乙個重複的數字2。第一反應就是寫巢狀的for迴圈,但是可想而知,必然時間複...
03 陣列中的重複數字
題目描述 劍指offer3 在乙個長度為 n 的陣列裡的所有數字都在 0 到 n 1 的範圍內。陣列中某些數字是重複的,但不知道有幾個數字是重複的,也不知道每個數字重複幾次。請找出陣列中任意乙個重複的數字。示例input output 2首先放乙個時間複雜度 o n 空間複雜度 o 1 的方法,因為...
03 找出陣列中重複的數字 python
題目 在乙個長度為n的陣列裡的所有數字都在0 n 1的範圍內。數字中的某些數字是重複的,但不知道有幾個數字重複了,也不知道每個數字重複了幾次。請找出陣列中任意乙個重複的數字。例如,如果輸入長度為7的陣列,那麼對應的輸出時重複的數字2或者3。1 使用字典 def duplicate nums dic ...