劍指offer系列之49 陣列中重複的數字

2021-07-11 04:02:12 字數 641 閱讀 7246

題目描述:在乙個長度為n的陣列裡的所有數字都在0到n-1的範圍內。 陣列中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出陣列中任意乙個重複的數字。 例如,如果輸入長度為7的陣列,那麼對應的輸出是重複的數字2或者3。

思路:此題的思路還是比較簡單的,與之前找出只出現一次的數字的題目有些類似,基本思路還是建立乙個map容器,key是出現的數字,value則是該數字出現的次數。在遍歷陣列的過程中,只要容器中已經出現了該數字,那麼就直接返回給陣列,並結束迴圈。建立乙個簡單的雜湊表即可。

public boolean duplicate(int numbers,int

length,int duplication)

int hash = new int[length];

for(int i = 0;i < hash.length;i++)

for(int i = 0;i < numbers.length;i++)

int j = 0;

for(int i = 0;i < hash.length;i++)

}if(j == 1)

return

true;

return

false;

}

劍指Offer系列49 醜數

我們把只包含質因子 2 3 和 5 的數稱作醜數 ugly number 求按從小到大的順序的第 n 個醜數。示例 輸入 n 10 輸出 12 解釋 1,2,3,4,5,6,8,9,10,12 是前 10 個醜數。說明 1 是醜數。n 不超過1690。python 思路 採用動態規劃求解,dp i ...

劍指offer49之陣列中重複的數字python

在乙個長度為n的陣列裡的所有數字都在0到n 1的範圍內。陣列中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出陣列中任意乙個重複的數字。例如,如果輸入長度為7的陣列,那麼對應的輸出是第乙個重複的數字2。class solution 這裡要特別注意 找到任意重複的乙個值並...

劍指offer系列 陣列中逆序對

題目描述 輸入乙個陣列,求出其中逆序對的總個數 示例 輸入 逆序對有,幾種情況 因此輸出5 分析 利用歸併排序的思想進行排序,時間複雜度o nlgn int inversepairscore vector nums,vector copy,int begin,int end int mid begi...