leetCode 1207 獨一無二的出現次數

2021-10-25 07:57:48 字數 1246 閱讀 7357

:

給你乙個整數陣列 arr,請你幫忙統計陣列中每個數的出現次數。

如果每個數的出現次數都是獨一無二的,就返回 true;否則返回 false。

示例 1:

輸入:arr = [1,2,2,1,1,3]

輸出:true

解釋:在該陣列中,1 出現了 3 次,2 出現了 2 次,3 只出現了 1 次。沒有兩個數的出現次數相同。

示例 2:

輸入:arr = [1,2]

輸出:false

示例 3:

輸入:arr = [-3,0,1,-3,1,1,1,-3,10,0]

輸出:true

1 <= arr.length <= 1000

-1000 <= arr[i] <= 1000

使用map統計不同元素的出現數目,再次使用雜湊表統計不同元素出現次數的數目,如果不同元素出現次數的數目與不同元素數目相同則返回true,否則返回false

class

solution

// 2. 使用set判斷元素出現次數有無重複,如果重複則元素出現次數的數目不等於數字數目

setset =

newhashset

<

>()

;for

(map.entry

x : map.

entryset()

)return set.

size()

== map.

size()

;}}

根據題目提示可以知道陣列中元素的大小範圍,也可以知道每個元素出現次數的範圍,因此可以使用陣列代替雜湊表。

class

solution

// 2.乙個數字最多出現1000次,定義乙個陣列記錄某個元素出現次數的出現次數

int[

] counter2 =

newint

[1000];

for(

int i =

0; i <

2001

; i++

)// 3. 如果出現次數的次數大於2則返回false

for(

int i =

0; i <

1000

; i++

)return

true;}

}

LeetCode1207 獨一無二的出現次數

1207.獨一無二的出現次數 給你乙個整數陣列 arr,請你幫忙統計陣列中每個數的出現次數。如果每個數的出現次數都是獨一無二的,就返回 true 否則返回 false。示例 1 輸入 arr 1,2,2,1,1,3 輸出 true 解釋 在該陣列中,1 出現了 3 次,2 出現了 2 次,3 只出現...

LeetCode 1207 獨一無二的出現次數

給你乙個整數陣列arr,請你幫忙統計陣列中每個數的出現次數。如果每個數的出現次數都是獨一無二的,就返回true 否則返回false。示例 1 輸入 arr 1,2,2,1,1,3 輸出 true 解釋 在該陣列中,1 出現了 3 次,2 出現了 2 次,3 只出現了 1 次。沒有兩個數的出現次數相同...

leetcode1207 獨一無二的出現次數

給你乙個整數陣列 arr,請你幫忙統計陣列中每個數的出現次數。如果每個數的出現次數都是獨一無二的,就返回 true 否則返回 false。示例 1 輸入 arr 1,2,2,1,1,3 輸出 true 解釋 在該陣列中,1 出現了 3 次,2 出現了 2 次,3 只出現了 1 次。沒有兩個數的出現次...