Skip to content

Commit 597d0f8

Browse files
committed
Create 1331-rank-transform-of-an-array.rs
1 parent 95a0a39 commit 597d0f8

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

1331-rank-transform-of-an-array.rs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
pub fn array_rank_transform(arr: Vec<i32>) -> Vec<i32> {
2+
let mut sorted_arr = arr.clone();
3+
sorted_arr.sort_unstable();
4+
sorted_arr.dedup();
5+
use std::collections::HashMap;
6+
let mut mmp = HashMap::new();
7+
for (i, e) in sorted_arr.iter().enumerate() {
8+
mmp.insert(e, i as i32 + 1);
9+
}
10+
arr.iter().map(|e|mmp[e]).collect()
11+
}
12+
13+
fn main() {
14+
let arr = vec![40,10,20,30];
15+
println!("{:?}", array_rank_transform(arr));
16+
}

0 commit comments

Comments
 (0)