力扣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];
    }
}
相关推荐
玖玥拾19 小时前
LeetCode 80 删除有序数组中的重复项 II
算法·leetcode
青山木19 小时前
Hot 100 --- 电话号码的字母组合
java·数据结构·算法·leetcode·逻辑回归
hanlin0320 小时前
刷题笔记:力扣第206题-反转链表
笔记·leetcode·链表
闪电悠米20 小时前
力扣hot100-240.搜索二维矩阵2-单调性剪枝详解
数据结构·算法·leetcode·矩阵·哈希算法
imuliuliang20 小时前
关于基于图论的最短路径算法性能对比分析7
算法
雨落在了我的手上20 小时前
Java数据结构(九):栈和队列
java·开发语言·数据结构
hurrycry_小亦20 小时前
洛谷题目:P1233 [ICPC 2001 Taejon R] 木棍加工 题解(本题较难)
c++·算法·贪心算法·动态规划
imuliuliang20 小时前
关于从栈与队列看算法思维的演化路径7
算法
春生野草20 小时前
个人笔记--大顶堆和基数排序
java·数据结构·算法
白狐_79821 小时前
【408计算机网络|第04章·下|408-CN-04B】网络层(下):路由算法、RIP、OSPF、BGP、IPv6与路由器
计算机网络·算法·智能路由器