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/

相关推荐
小指纹1 小时前
2025山东CCPC题解
c++·算法
guitarjoy2 小时前
Compose原理 - 整体架构与主流程
java·开发语言
小老鼠不吃猫2 小时前
C接口 中文字符问题
c语言·开发语言
前端码虫3 小时前
JS分支和循环
开发语言·前端·javascript
GISer_Jing3 小时前
MonitorSDK_性能监控(从Web Vital性能指标、PerformanceObserver API和具体代码实现)
开发语言·前端·javascript
岸边的风3 小时前
JavaScript篇:JS事件冒泡:别让点击事件‘传染’!
开发语言·前端·javascript
bubiyoushang8884 小时前
matlab雷达定位仿真
开发语言·matlab
PixelMind5 小时前
【LUT技术专题】图像自适应3DLUT
图像处理·深度学习·算法·3dlut
yezipi耶不耶5 小时前
Rust入门之并发编程基础(一)
开发语言·后端·rust
木子.李3475 小时前
数据结构-算法学习C++(入门)
数据库·c++·学习·算法