題目連結:
題目意譯:
給定一整數陣列 arr,撰寫一個函式其回傳真(True)若且唯若陣列裡每種值出現次數皆相異。
限制:
1 ≦ arr.length ≦ 1000
-1000 ≦ arr[i] ≦ 1000
範例測資:
範例 1:
輸入: arr = [1,2,2,1,1,3]
輸出: true
解釋: 1 有出現三次、2 有兩次、3 為一次。沒有任何兩個值有著相同的出現次數。
範例 2:
輸入: arr = [1,2]
輸出: false
範例 3:
輸入: arr = [-3,0,1,-3,1,1,1,-3,10,0]
輸出: true
解題思維:
就是單純地兩次的統計,可以用兩個陣列或是兩個雜湊表(Hash Table)。
先統計一次 arr 中數字的出現次數(單一一次統計可以做法參見
這題),然後將出現次數作為第二個序列再統計一次。如果有出現次數相同,則為假(False)。
此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。