作者yam276 (史萊哲林的優等生)
看板Marginalman
標題Re: [閒聊] 每日LeetCode
時間Wed Jan 17 11:45:40 2024
https://leetcode.com/problems/unique-number-of-occurrences/
1207. Unique Number of Occurrences
給一個陣列,判斷每種數字的出現次數是否為唯一
思路:
1. 先用HashMap蒐集出現次數
2. 嘗試用出現次數插入一個HashSet,失敗代表非唯一
Code:
use std::collections::{HashMap, HashSet};
impl Solution {
pub fn unique_occurrences(arr: Vec<i32>) -> bool {
let mut hash_arr: HashMap<i32, i32> = HashMap::new();
for num in arr{
*hash_arr.entry(num).or_insert(0) += 1;
}
let mut occurrences = HashSet::new();
for count in hash_arr.values() {
if !occurrences.insert(count) {
return false;
}
}
true
}
}
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.251.123.162 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1705463142.A.996.html
→ ILoveErr: 大師 01/17 11:46
→ SecondRun: 大師 01/17 11:48