算法
kl编程
勇往直前
展开
-
leetcode四数之和
四数之和给你一个由 n 个整数组成的数组 nums ,和一个目标值 target 。请你找出并返回满足下述全部条件且不重复的四元组 [nums[a], nums[b], nums[c], nums[d]] (若两个四元组元素一一对应,则认为两个四元组重复):0 <= a, b, c, d < na、b、c 和 d 互不相同nums[a] + nums[b] + nums[c] + nums[d] == target你可以按 任意顺序 返回答案 。这道题的本质其实是和三数之和一样的,原创 2022-03-01 16:01:32 · 7826 阅读 · 0 评论 -
leetcode算法题17电话号码的字母组合
算法题17电话号码的字母组合给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。这道题最核心的点就是在于根据不同的长度的数字字符串给出不同的循环次数,我使用的是递归回溯算法,直接上代码List<String> re = new ArrayList<>(); if(digits.equals("")) return re; String原创 2022-02-27 23:04:40 · 133 阅读 · 0 评论 -
力扣算法题三数之和的解法与分析
力扣算法题三数之和15.三数之和给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。这道算法题我苦思冥想了很久,始终不得解,看了题解才豁然开朗,感叹自己还是个算法小白。此算法主要运用到的思想是排序+双指针,但是如何去重才是关键。排序是为了能使用双指针,对于双指针,我本来是用for循环重新遍历一遍的,但是其实不然,使用while(L<R)去原创 2022-02-23 12:31:40 · 475 阅读 · 0 评论