首页 > 其他分享 >『LeetCode』1. 两数之和 Two Sum

『LeetCode』1. 两数之和 Two Sum

时间:2023-12-21 19:55:21浏览次数:33  
标签:map return nums int Sum Complexity new LeetCode 两数

『1』暴力法

class Solution {
    // Brute Force
    // Time Complexity: O(n^2)
    // Space Complexity: O(1)
    public int[] twoSum(int[] nums, int target) {
        for (int i = 0; i < nums.length; i++) {
            for (int j = i + 1; j < nums.length; j++) {
                int sum = nums[i] + nums[j];
                if (sum == target) {
                    return new int[] {i, j};
                }
            }
        }
        return new int[0];
    }
}

『2』哈希表法

class Solution {
    // HashMap
    // Time Complexity: O(n)
    // Space Complexity: O(n)
    public int[] twoSum(int[] nums, int target) {
        HashMap<Integer, Integer> map = new HashMap<>();
        for (int i = 0; i < nums.length; i++) {
            int diff = target - nums[i];
            if (map.containsKey(diff)) {
                return new int[] {i, map.get(diff)};
            }
            map.put(nums[i], i);
        }
        return new int[0];
    }
}

标签:map,return,nums,int,Sum,Complexity,new,LeetCode,两数
From: https://www.cnblogs.com/torry2022/p/17919986.html

相关文章

  • 2. 两数相加(中)
    目录题目题解:递归题目给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字0之外,这两个数都不会以0开头。题解:递归仔细理解......
  • 陶建辉应邀参与 TOP100Summit,“工程师文化”演讲引发热议
    在AGI时代,数字化成为组织形态的重要特征,它可以帮助组织实现上下一致的目标和信息的高频传递,从而实现战略目标的协同和敏捷进化。在这样的大背景下,开发者们面临的实际挑战是如何避免技术和业务之间的割裂。12月14-17日,由msup和微上信息技术研究院联合主办的第十二届“TOP100......
  • [LeetCode Hot 100] LeetCode74. 搜索二维矩阵
    题目描述思路:二维矩阵坐标变换+二分查找二维矩阵坐标变换:只要知道二维数组的的行数m和列数n,二维数组的坐标(i,j)可以映射成一维的index=i*n+j;反过来也可以通过一维index反解出二维坐标i=index/n,j=index%n。(n是列数)把二维数组matrix的元素访问抽象成在......
  • [LeetCode] LeetCode852. 山脉数组的顶峰索引
    题目描述思路:用二分进行排除不满足条件的元素,最后剩下的元素即为答案往常我们使用「二分」进行查值,需要确保序列本身满足「二段性」:当选定一个端点(基准值)后,结合「一段满足&另一段不满足」的特性来实现“折半”的查找效果。但本题求的是峰顶索引值,如果我们选定数组头部或者尾......
  • [LeetCode] LeetCode162. 寻找峰值
    题目描述思路:同LeetCode852.山脉数组的顶峰索引注意:当nums数组只有一个元素的时候,这个元素就是顶元素因为根据题目:nums[-1]=nums[n]=-∞方法一:classSolution{publicintfindPeakElement(int[]nums){if(nums.length==1)return0;intl......
  • 1 + np.nan # nan sum([1, np.nan]) # nan
    1+np.nan#nansum([1,np.nan])#nannp.sum([1,np.nan])#nanhttps://blog.51cto.com/u_16055028/6177557PythonPandaspivot_table透视表计数numpy.sum()是NumPy库中的一个函数,用于计算数组中所有元素的总和¹²³⁴⁵。以下是该函数的基本语法:numpy.sum(a,axis=N......
  • [LeetCode] 1362. Closest Divisors 最接近的因数
    Givenaninteger num,findtheclosesttwointegersinabsolutedifferencewhoseproductequals num+1 or num+2.Returnthetwointegersinanyorder.Example1:Input:num=8Output:[3,3]Explanation:Fornum+1=9,theclosestdivisorsare3&......
  • Leetcode—旋转矩阵
    48. 旋转图像给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转90度。你必须在 原地 旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。示例1:输入:matrix=[[1,2,3],[4,5,6],[7,8,9]]输出:[[7,......
  • Leetcode 71. 简化路径
    https://leetcode.cn/problems/simplify-path/description/给你一个字符串path,表示指向某一文件或目录的Unix风格绝对路径(以'/'开头),请你将其转化为更加简洁的规范路径。在Unix风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点(..)表示将目录切换到上一级(指向父目......
  • [LeetCode22-中等-DFS] 括号生成
    这道题考使用回溯(递归的一种)进行深度优先算法,题目是这样的数字n代表生产括号的对数,写一个算法,返回所有有效的括号组合比如 n=1代表生成1对括号,显然答案就是“()"n=2,代表生成2对括号, 答案就是"()()","(())"n=3代表生成3对括号,答案就是"((()))","()()()","(()())......