獨一無二的出現次數

2022-01-10 08:55:13 字數 1073 閱讀 1971

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

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

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

輸出:true

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

輸入:arr = [1,2]

輸出:false

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

輸出:true

/**

* @param arr

* @return

*/var uniqueoccurrences = function(arr) )

var keys = object.keys(hashtable);

var values = object.values(hashtable);

return keys.length === [...new set(values)].length;

};

使用雜湊表記錄每個數字出現的次數,之後使用set處理出現的次數,然後對比雜湊表的長度即可,首先定義乙個雜湊表,在此處是使用js的普通物件的形式,此處只是為了借助其結構所以不需要原型指向,另外在js中提供了map物件作為鍵值對雜湊表的解決方案,之後遍歷陣列,如果未定義,那麼就將雜湊表的此鍵值的值設定為1,如果鍵值在雜湊表中定義,那麼就將其值加1,之後獲取物件中所有的鍵陣列,以及所有的值陣列,之後將值陣列作為引數傳入set物件去重,之後用spread操作符將其展開並形成乙個新陣列,之後獲取其長度與鍵陣列的長度作比較並返回即可。

獨一無二的出現次數

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

1207 獨一無二的出現次數

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

1207 獨一無二的出現次數

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