![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
dadadalolida
这个作者很懒,什么都没留下…
展开
-
Leetcode刷题记录 735. 行星碰撞
碰撞规则:两个行星相互碰撞,较小的行星会爆炸。两颗移动方向相同的行星,永远不会发生碰撞。对于数组中的每一个元素,其绝对值表示行星的大小,正负表示行星的移动方向(正表示向右移动,负表示向左移动)。解释:2 和 -5 发生碰撞后剩下 -5。10 和 -5 发生碰撞后剩下 10。解释:10 和 -5 碰撞后只剩下 10。输入:asteroids = [5,10,-5]输入:asteroids = [10,2,-5]解释:8 和 -8 碰撞后,两者都发生爆炸。输入:asteroids = [8,-8]原创 2022-11-08 12:58:47 · 158 阅读 · 0 评论 -
Leetcode刷题记录 876. 链表的中间结点
ans.val = 3, ans.next.val = 4, ans.next.next.val = 5, 以及 ans.next.next.next = NULL.解法二:使用快慢指针的方式,快指针每次走两步,慢指针每次走一步,当快指针走到最后一个节点的时候,慢指针走到中间节点。(测评系统对该结点序列化表述是 [3,4,5])。输出:此列表中的结点 3 (序列化形式:[3,4,5])输出:此列表中的结点 4 (序列化形式:[4,5,6])输入:[1,2,3,4,5,6]输入:[1,2,3,4,5]原创 2022-10-27 12:34:46 · 131 阅读 · 0 评论 -
Leetcode刷题记录 203. 移除链表元素
看到讨论区比较有启发的题解,通过增加一个头结点的方式,方便直接在原链表上进行元素的移除。输入:head = [1,2,6,3,4,5,6], val = 6。输入:head = [7,7,7,7], val = 7。自己的做法:通过构建一个新链表来实现链表元素的移除。输入:head = [ ], val = 1。列表中的节点数目在范围 [0, 104] 内。输出:[1,2,3,4,5]原创 2022-10-27 12:09:09 · 364 阅读 · 0 评论 -
Leetcode刷题记录 141. 环形链表
【代码】Leetcode刷题记录 141. 环形链表。原创 2022-10-26 16:57:32 · 93 阅读 · 0 评论 -
Leetcode刷题记录 剑指 Offer II 023. 两个链表的第一个重合节点
题解思路:自己的思路是若存在链表长度不相等的情况,统计长链表和短链表的长度;采用双指针,先将长链表的指针移动到与短链表指针相同的位置,两个链表左端对齐;再进行结点的循环,来判断两个节点是否为同一个。给定两个单链表的头节点 headA 和 headB ,请找出并返回两个单链表相交的起始节点。自己一开始未通过全部测试例子的原因:忽略了两个链表长度相等时候的情况。通过查看讨论区的题解,发现的更简单解法,但对自己来说更不好理解。注意,函数返回结果后,链表必须 保持其原始结构。原创 2022-10-25 12:40:22 · 151 阅读 · 0 评论 -
Leetcode刷题记录 剑指 Offer II 024. 反转链表
给定单链表的头节点 head ,请反转链表,并返回反转后的链表的头节点。剑指 Offer II 024. 反转链表。输入:head = [1,2,3,4,5]输出:[5,4,3,2,1]解法二:迭代,使用循环结构。解法三:递归,使用选择结构。原创 2022-10-24 19:08:06 · 110 阅读 · 0 评论 -
Leetcode刷题记录 剑指 Offer 25. 合并两个排序的链表
1.在开始的时候要初始化两个空指针,一个用来从前往后进行遍历来返回最终的值,一个用来构建新链表。不然无法返回新链表中的全部数据。输入两个递增排序的链表,合并这两个链表并使新链表中的节点仍然是递增排序的。剑指 Offer 25. 合并两个排序的链表。输入:1->2->4, 1->3->4。输出:1->1->2->3->4->4。2.要先确定新链表中的头结点。原创 2022-10-24 18:54:45 · 133 阅读 · 0 评论 -
Leetcode刷题记录 剑指 Offer 06. 从尾到头打印链表
1.一开始自己的思路如下。问题在于此处的ans为局部变量数组,此处的p为局部指针,因此当退出了函数后,局部变量数组也会被销毁,因此会报空指针的错误。此处自己的做法是先反转链表,再把链表中的数据存到数组当中。输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。2.自己做的时候没有在意returnSize,实际上是要计数的。输入:head = [1,3,2]输出:[2,3,1]原创 2022-10-24 18:47:21 · 80 阅读 · 0 评论 -
Leetcode刷题记录 剑指 Offer 22. 链表中倒数第k个节点
例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6。这个链表的倒数第 3 个节点是值为 4 的节点。题目:输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。给定一个链表: 1->2->3->4->5, 和 k = 2.返回链表 4->5.原创 2022-10-24 18:34:17 · 79 阅读 · 0 评论