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/

相关推荐
立志成为大牛的小牛几秒前
数据结构——四十一、分块查找(索引顺序查找)(王道408)
数据结构·学习·程序人生·考研·算法
A阳俊yi2 分钟前
Spring Data JPA
java·开发语言
csbysj20206 分钟前
CSS 对齐
开发语言
爱吃巧克力的程序媛6 分钟前
将qt界面中加载css或者qss样式
开发语言·css·qt
njxiejing7 分钟前
Python进度条工具tqdm的安装与使用
开发语言·python
xier_ran17 分钟前
深度学习:RMSprop 优化算法详解
人工智能·深度学习·算法
地平线开发者25 分钟前
不同传感器前中后融合方案简介
算法·自动驾驶
张np34 分钟前
java基础-集合接口(Collection)
java·开发语言
地平线开发者36 分钟前
征程 6X 常见 kernel panic 问题
算法·自动驾驶