Rust 力扣 - 2. 两数相加

文章目录

题目描述

题解思路

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

题解代码

rust 复制代码
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/

相关推荐
MayZork2 分钟前
std::filesystem 文件操作详解
开发语言·c++·qt
Nebula_g2 小时前
JavaSE加强:IO流
java·开发语言·windows·stream·javase
Ada's9 小时前
【计算机基础系列】003:Python数据结构
开发语言·数据结构·python
2601_9628857210 小时前
如何用 Python 计算 TRIX 三重指数平滑均线指标?
开发语言·python
还卿一钵无情泪10 小时前
Unsloth 微调 构建自己的大模型 没有GPU也能微调
linux·开发语言·人工智能·python·大模型·nlp·unsloth
Nil20810 小时前
leetcode 118杨辉三角
算法·leetcode·职场和发展
倔强的石头10612 小时前
应用账号最小权限实践:读写账号、报表账号、运维账号分层
java·运维·开发语言
传人once12 小时前
页面中心圆圈放大效果如何写
开发语言·javascript·ecmascript
NeilYuen12 小时前
【C++】STL源码仿写(二):vector
开发语言·c++
蜗牛互联网12 小时前
Python消费Responses SSE事件:增量文本、超时与取消
java·开发语言·人工智能·后端·python