劍指offer50 陣列中重複的第乙個數字

2021-10-19 19:37:49 字數 905 閱讀 1434

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

返回描述:

如果陣列中有重複的數字,函式返回true,否則返回false。

如果陣列中有重複的數字,把重複的數字放到引數duplication[0]中。(ps:duplication已經初始化,可以直接賦值使用。)

這個題跟40題很像。

劍指offer40–陣列中只出現一次的數字

直接雜湊遍歷兩遍:

public

:// parameters:

// numbers: an array of integers

// length: the length of array numbers

// duplication: (output) the duplicated number in the array number

// return value: true if the input is valid, and there are some duplications in the array number

// otherwise false

bool

duplicate

(int numbers,

int length,

int* duplication)

for(

int i=

0;i)//第二遍找第乙個重複的數字,找到立馬返回

}return0;

}};

劍指offer 50 陣列中重複的數字

在乙個長度為n的陣列裡的所有數字都在0到n 1的範圍內。陣列中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出陣列中任意乙個重複的數字。例如,如果輸入長度為7的陣列,那麼對應的輸出是第乙個重複的數字2。這道題是比較基礎,主要思路如下 首先判斷陣列是否為空,若為空直接返回...

劍指Offer(50) 陣列中重複的數字

在乙個長度為n的陣列裡的所有數字都在0到n 1的範圍內。陣列中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出陣列中任意乙個重複的數字。例如,如果輸入長度為7的陣列,那麼對應的輸出是第乙個重複的數字2。1 將陣列連線成字串變數stringbuilder 2 按位遍歷字串...

劍指offer 50 陣列中重複的數字

在乙個長度為n的陣列裡的所有數字都在0到n 1的範圍內。陣列中某些數字是重複的,但不知道有幾個數字是重複的。也不知道每個數字重複幾次。請找出陣列中任意乙個重複的數字。例如,如果輸入長度為7的陣列,那麼對應的輸出是第乙個重複的數字2。思路 解法一 雜湊表 時間o n 空間o n class solut...