diff --git a/contains-duplicate/livemehere.rs b/contains-duplicate/livemehere.rs new file mode 100644 index 000000000..c7920837b --- /dev/null +++ b/contains-duplicate/livemehere.rs @@ -0,0 +1,14 @@ +use std::collections::HashSet; + +impl Solution { + pub fn contains_duplicate(nums: Vec) -> bool { + let mut set: HashSet = HashSet::new(); + for &n in nums.iter() { + if set.contains(&n) { + return true; + } + set.insert(n); + } + false + } +} diff --git a/two-sum/livemehere.rs b/two-sum/livemehere.rs new file mode 100644 index 000000000..8ab5a9c04 --- /dev/null +++ b/two-sum/livemehere.rs @@ -0,0 +1,17 @@ +use std::collections::HashMap; + +impl Solution { + pub fn two_sum(nums: Vec, target: i32) -> Vec { + let mut map: HashMap = HashMap::new(); + + for (idx, &n) in nums.iter().enumerate() { + let pair = target - n; + if let Some(&pair_idx) = map.get(&pair) { + return vec![idx as i32, pair_idx]; + } else { + map.insert(n, idx as i32); + } + } + vec![] + } +}