力扣1.两数之和(哈希表)

复制代码
class Solution {
    // 定义一个名为twoSum的方法,接收一个整数数组nums和一个整数target作为参数
    public int[] twoSum(int[] nums, int target) {
        // 创建一个HashMap,用于存储数组中的元素及其对应的索引
        Map<Integer, Integer> map = new HashMap<Integer, Integer>();
        // 遍历数组nums
        for (int i = 0; i < nums.length; i++) {
            // 检查map中是否存在一个键值对,其键为target减去当前元素的值
            if (map.containsKey(target - nums[i])) {
                // 如果存在这样的键值对,返回一个包含两个索引的数组
                return new int[]{map.get(target - nums[i]), i};
            }
            // 将当前元素及其索引添加到map中
            map.put(nums[i], i);
        }
        // 如果没有找到满足条件的两个数,返回一个空数组
        return new int[0];
    }
}
相关推荐
代码改善世界16 小时前
【数据结构与算法】栈和队列题解
数据结构
ShineWinsu16 小时前
对于C++:继承的解析—上
开发语言·数据结构·c++·算法·面试·笔试·继承
pp起床16 小时前
动态规划 | part05
算法·动态规划
GuangHeAI_ATing16 小时前
国密算法SSD怎么选?这3款国产固态硬盘安全又高速
算法
雨泪丶17 小时前
代码随想录算法训练营-Day34
算法
Yzzz-F17 小时前
牛客寒假算法训练营2
算法
甄心爱学习17 小时前
【python】获取所有长度为 k 的二进制字符串
python·算法
iAkuya17 小时前
(leetcode)力扣100 76数据流的中位数(堆)
算法·leetcode·职场和发展
键盘鼓手苏苏18 小时前
Flutter for OpenHarmony: Flutter 三方库 ntp 精准同步鸿蒙设备系统时间(分布式协同授时利器)
android·分布式·算法·flutter·华为·中间件·harmonyos
董董灿是个攻城狮18 小时前
AI 视觉连载5:传统 CV 之均值滤波
算法