leetcode刷题
bfu_努力进大厂送外卖的Z
日常更新leetcode算法(每日一题、常见题) 准备开始学习Java方向基础知识,阅读笔记,源码心得体会等。
展开
-
LeetCode 56 合并区间
);(附 : 这种形式也适合于优先队列创建时的自定义比较器定义)比如:});当然了,本身优先队列里的对象如果是包装数据类型的话,就是升序的,这里只是举个例子。如果需要根据比较的元素来倒序排序,只需要return b - a。原创 2024-06-06 13:47:39 · 358 阅读 · 0 评论 -
LeetCode 两数之和 + 三数之和
思路:一个Map,key是数值,value是该数值对应的下标,遍历的时候判断一下当前数组下标对应的值在map里有没有可组合成target的(具体体现为在map里找target-nums【i】),如果有,直接返回,没有的话就加进去,继续找。思路:严格上来说算三个指针,一个i是维护当前遍历到的数字下标,之后的l和r指针是从i所处位置开始,在i + 1 到len - 1这个区间中寻找nums[i]的相反数。需要掌握的方法:map的get和containsKey。原创 2024-06-06 13:17:46 · 406 阅读 · 0 评论 -
Leetcode49 字母异位词分组
思路 : 字母异位词是字母排序不同,但字母总量相同的字符串,可以用一个排序后的String充当key,一个List收集对应该String的全部异位词。map.values() 取出Map的全部value值作为一个列表。toCharArray : String转char类型数组。如果有疑问和更好的见解欢迎交流。原创 2024-06-05 14:04:15 · 248 阅读 · 0 评论 -
LC 26删除有序数组中的重复项
去重题,双指针,,因为题干说原地删除,且nums其余元素不重要。一个cur记录当前不重复的数应该插在第几位了,for循环里的i相当于是第二个指针(右指针),遍历数组来找不重复的元素。原创 2024-06-05 13:30:46 · 213 阅读 · 0 评论 -
最大堆,最小堆,优先队列,堆排序 &LC例题-找第K大元素
优先队列,最大堆最小堆原创 2024-06-05 13:21:49 · 1699 阅读 · 0 评论 -
LeetCode 128 最长连续序列(hot100) 解题思路分享
如果希望On的话,那就采取设置一个Set的方法,这样空间复杂度是On,但是时间复杂度降到On(如果是常规做法,排序时间复杂度至少是Onlogn)set的作用就是一遍预处理读入全部数字,遍历的时候找到每一个可能的递增序列中的最小数,然后不断地加1向后找,维护一个longest作为结果。如果对时间复杂度没有要求的话,可以先排序,再一段一段地找,这样的好处是空间占用小。原创 2024-05-24 15:36:08 · 254 阅读 · 0 评论 -
LC每日一题记录 2861. 最大合金数
所有合金都需要由同一台机器制造,因此我们可以枚举使用哪一台机器来制造合金。对于每一台机器,我们可以使用二分查找的方法找出最大的整数 xxx,使得我们可以使用这台机器制造 xxx 份合金。找出所有 xxx 中的最大值即为答案。原创 2024-01-28 01:02:29 · 261 阅读 · 0 评论 -
LC每日一题 2024/1/25 2859. 计算 K 置位下标对应元素的和
简单的位运算,就是寻找这个数对应的二进制中的1的个数是否与k相同,如果相同,就把这个数加到结果当中。可能涉及到的方法:Integer.bitCount() -->计算出二进制中包含的1的个数。原创 2024-01-25 22:24:58 · 350 阅读 · 0 评论 -
[LeetCode Hot100热题 ] 详解LC 105 从前序和中序遍历序列构造二叉树
lc热题详解原创 2024-01-20 23:07:50 · 530 阅读 · 0 评论 -
LC每日一题 2024/1/20 lc 2788 按分隔符拆分字符串
leetcode每日一题原创 2024-01-20 21:24:04 · 426 阅读 · 0 评论 -
LeetCode Hot100热题 LC46 全排列(回溯)
题干。原创 2024-01-14 11:28:31 · 355 阅读 · 1 评论 -
LeetCode 日常刷题 lc 82. 删除排序链表中的重复元素 II
情况二:从头节点开始,没出现重复的节点,则直接使得pre = pre.next,此时pre指向了头节点,nextNode指向头节点的下一个节点,假设此时nextNode不为空,且出现了重复,则nextNode自行向后遍历直到不重复后,pre.next指向了nextNode的next节点(这是全部重复节点的最后一个节点的next节点)此时pre.next = head,但是因为出现了重复,我们需要将它的next指向nextNode的next节点。原创 2024-01-14 11:18:40 · 339 阅读 · 1 评论 -
LeetCode 每日一题 2024/1/14 lc 83. 删除排序链表中的重复元素
简单的删除链表节点类型的题,只是需要在遍历过程中考虑删除全部的重复的值,为此设置一个临时节点temp,当temp和后续节点nextNode相同时,将一直遍历下去,直到两个节点不等,此时将最初的cur节点的next指针指向temp的next节点。原创 2024-01-14 10:41:20 · 481 阅读 · 1 评论 -
2024/1/12 lc 2085. 统计出现过一次的公共字符串
2024/1/12 lc 2085. 统计出现过一次的公共字符串原创 2024-01-13 18:41:48 · 363 阅读 · 1 评论