【无标题】1.用哈希表做两数之和

这道题我要学习的地方有很多,比如

1**.auto:它是让编译器让它自动猜类型,适用于类型名称很长的适合,在这段代码中,x的类型如果不写成auto的话就写成unordered_map<int,int>::iterator(iterator是迭代器的意思)**

2.当返回值类型是vector<int>时,我们的return可以写成{i,x->second}这是列表初始化的写法

记住的方法是:

return{a,b}

自动打包成a和b,拼成题目想要的数组答案直接返回

3.x->second这个是代表哈希表中值x->first代表的是键

复制代码
class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        unordered_map<int,int>hash;
        for(int i=0;i<nums.size();i++){
            auto x=hash.find(target-nums[i]);
            if(x!=hash.end()){
                return {i,x->second};

            }
            hash[nums[i]]=i;

        }
        return {};
    }
};
相关推荐
py有趣13 小时前
力扣热门100题之和为K的子数组
数据结构·算法·leetcode
hipolymers13 小时前
C语言怎么样?难学吗?
c语言·数据结构·学习·算法·编程
workflower15 小时前
机器人应用-楼宇室内巡逻
大数据·人工智能·算法·microsoft·机器人·动态规划·享元模式
ZPC821015 小时前
fanuc 机器人通过PR寄存器实现轨迹控制
人工智能·算法·计算机视觉·机器人
py有趣15 小时前
力扣热门100题之编辑距离
数据结构·算法·leetcode
Wave84515 小时前
C++继承详解
开发语言·c++·算法
睡觉就不困鸭15 小时前
第9天 两数之和
算法·哈希算法·散列表
贾斯汀玛尔斯16 小时前
每天学一个算法--动态规划(Dynamic Programming, DP)
算法·动态规划
水木流年追梦16 小时前
CodeTop 热门题目汇总hot300题
算法·leetcode·职场和发展
小糖学代码16 小时前
LLM系列:2.pytorch入门:3.基本优化思想与最小二乘法
人工智能·python·算法·机器学习·ai·数据挖掘·最小二乘法