题目描述

在这里插入图片描述

题解思路

我们使用一个全局的备忘录,然后我们遍历数组,如果当前元素在备忘录里面找到了,就返回备忘录里面记录的下标和当前下标记录,没找到就把当前元素匹配的元素和当前元素下标存入备忘录

题解代码

use std::collections::{HashMap};

impl Solution {
    pub fn two_sum(nums: Vec<i32>, target: i32) -> Vec<i32> {
        let mut record = HashMap::new();

        for (i, num) in nums.iter().enumerate() {
            if let Some(j) = record.get(num) {
                return vec![*j as i32, i as i32];
            } else {
                record.insert(target - num, i);
            }
        }

        vec![]
    }
}

题目链接

https://leetcode.cn/problems/two-sum/

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部