From 6866cf0b82923f598e1ac9b88e5d3edb009a01fb Mon Sep 17 00:00:00 2001 From: sangge-redmi <2251250136@qq.com> Date: Thu, 20 Jun 2024 06:13:25 +0800 Subject: [PATCH] rewrite 1 in rust --- leetcode/1.rs | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 leetcode/1.rs diff --git a/leetcode/1.rs b/leetcode/1.rs new file mode 100644 index 0000000..b278370 --- /dev/null +++ b/leetcode/1.rs @@ -0,0 +1,30 @@ +use std::collections::HashMap; + +impl Solution { + /// This function takes a vector of integers (`nums`) and an integer (`target`) as input. + /// It returns a vector of integers. + /// + /// # Arguments + /// + /// * `nums` - A vector of integers. + /// * `target` - An integer that represents the target sum. + /// + /// # Returns + /// + /// This function returns a vector of integers. + pub fn two_sum(nums: Vec, target: i32) -> Vec { + let mut map = HashMap::new(); + + for (i, &num) in nums.iter_mut().enumerate() { + let complement = target - num; + + if let Some(&index) = map.get(&complement) { + return vec![index as i32, i as i32]; + } + + map.insert(num, i); + } + + vec![] + } +}