統計陣列中每個數字出現的次數 陣列中重複出現的數字

2021-10-12 09:47:29 字數 536 閱讀 1132

今天給大家帶來的是一道劍指offer上的題目,也是一道很經典的題目,經常在面試**現,下面我們來看一下題目描述吧

題目說明:在乙個長度為 n 的陣列 nums 裡的所有數字都在 0~n-1 的範圍內。陣列中某些數字是重複的,但不知道有幾個數字重複了,也不知道每個數字重複了幾次。請找出陣列中任意乙個重複的數字。
示例 1:

輸入: [2, 3, 1, 0, 2, 5, 3] 輸出:2 或 3
題目解析:該題題意很容易理解,只需要找出陣列中的某一重複出現的數字即可。

我們今天主要通過三種做法解決該題,第一種方法我們可以先對其排序,然後進行遍歷當發現重複元素時我們直接返回該元素即可,這種方法比較容易理解,也比較容易實現,大家可以試一下。

class solution {

public int findrepeatnumber(int nums) {

arrays.sort(nums);//排序

//迴圈遍歷

for(int i = 1; i第二

8 統計陣列中數字出現次數

8.給定陣列a,大小為n,數字元素為1 n的int數,但是有些數字出現多次,有些數字沒出現,統計出哪些數字出現了多次,哪些數字沒有出現,要求額外空間使用o 1 時間o n 答 空間複雜度為o 1 故不能用額外的空間,即在陣列本身上操作。時間為o n 故不能用先排序後比較相鄰元素的方法,時間為o nl...

統計數字出現次數

description 某次科研調查時得到了n個自然數,每個數均不超過1500000000 1.5 10 9 已知不相同的數不超過10000個,現在需要統計這些自然數各自出現的次數,並按照自然數從小到大的順序輸出統計結果。input 包含多個測試資料,每個包含n 1行 第1行是整數n,表示自然數的個...

統計陣列中各元素出現次數

給定一大小為n的整數陣列,其元素取值範圍為 1,n 請統計各元素出現的次數,並要求時間複雜度為o n 空間複雜度為o 1 若沒有空間的限制,則可直接開闢乙個大小等於元素最大值的陣列對各元素進行統計,並且順帶還進行了時間複雜度為o n 的排序 比快速排序還快哦 統計n個元素出現的次數,每個元素對應乙個...