力扣第1题:两数之和(C++)

方法一:双层循环暴力求解

cpp 复制代码
class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        int n=nums.size();
        for(int i=0;i<n;i++){
            for(int j=i+1;j<n;j++){
                if(nums[i]+nums[j]==target){
                    return {i,j};// 如果相等,则返回这两个索引组成的向量
                }
            }
        }
        return {};//找不到就返回空向量
    }
};

方法二:哈希表

cpp 复制代码
class Solution {
public:
    vector<int> twoSum(vector<int>& nums, int target) {
        unordered_map<int, int> indices;//创建哈希表<数值,索引>
        for (int i = 0; i < nums.size(); i++) {
            int v = nums[i];
            int prevV = target - v;
            if (indices.count(prevV)) {// 检查 prevV 是否在哈希表中存在
                return {i, indices[prevV]};
            }
            indices[v] = i;// 如果没有找到匹配,将当前元素和它的索引存入哈希表
        }
        
        return {};
    }
};
相关推荐
NULL指向我1 分钟前
信号处理学习笔记6:ADC采样线性处理实测拟合
人工智能·算法·机器学习
汽车仪器仪表相关领域3 分钟前
NHXJ-02汽车悬架检验台 实操型实战手册
人工智能·功能测试·测试工具·算法·安全·单元测试·可用性测试
源码之屋5 分钟前
计算机毕业设计:Python天气数据采集与可视化分析平台 Django框架 线性回归 数据分析 大数据 机器学习 大模型 气象数据(建议收藏)✅
人工智能·python·深度学习·算法·django·线性回归·课程设计
我爱C编程5 分钟前
【3.2】FFT/IFFT变换的数学原理概述与MATLAB仿真
算法·matlab·fpga·fft·ifft
chao18984413 分钟前
基于改进二进制粒子群算法的含需求响应机组组合问题MATLAB实现
开发语言·算法·matlab
lcj251113 分钟前
字符函数,字符串函数,内存函数
c语言·开发语言·c++·windows
吃着火锅x唱着歌18 分钟前
深度探索C++对象模型 学习笔记 第三章 Data语意学(2)
c++·笔记·学习
Imxyk20 分钟前
P9242 [蓝桥杯 2023 省 B] 接龙数列
c++·算法·图论
炽烈小老头24 分钟前
【每天学习一点算法 2026/04/10】Excel表列序号
学习·算法
郝学胜-神的一滴24 分钟前
二叉树后序遍历:从递归到非递归的优雅实现
数据结构·c++·程序人生·算法·