Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit bf3aad0

Browse files
author
ruislan
committed
solved q229
1 parent 19f37f0 commit bf3aad0

File tree

2 files changed

+19
-0
lines changed

2 files changed

+19
-0
lines changed

‎src/q/mod.rs‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,7 @@ mod q225;
150150
mod q226;
151151
mod q227;
152152
mod q228;
153+
mod q229;
153154
mod q230;
154155
mod q231;
155156
mod q232;

‎src/q/q229.rs‎

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
use crate::q::Solution;
2+
3+
#[allow(unused)]
4+
impl Solution {
5+
pub fn majority_element(nums: Vec<i32>) -> Vec<i32> {
6+
// 方法1
7+
// 计数,O(n)空间,不是最佳
8+
// AC 0ms 2.3mb
9+
use std::collections::HashMap;
10+
let mut freq = HashMap::new();
11+
let n = nums.len();
12+
let cap = n / 3;
13+
for x in nums {
14+
*freq.entry(x).or_insert(0) += 1;
15+
}
16+
freq.into_iter().filter(|(k, v)| *v > cap).map(|(k, v)| k).collect()
17+
}
18+
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /