
Leetcode
Super__Kun
这个作者很懒,什么都没留下…
展开
-
环形链表找环的起点
1、给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。说明:不允许修改给定的链表输入:head = [3,2,0,-4]输出:返回索引为 1 的链表节点解释:链表中有一个环,其尾部连接到第二个节点。解题思路:1、使用快慢指针,先判断是否有环快指针每一次走两步,慢指针一次走一步。如果链表存在环,那么快指针与慢指针一定会在环中某个位置相遇。2、若存在环,此时慢指针相遇时,fast 指针已经走完了环的 n 圈,因此它走过的总距离为 a+n(b+c)+b=a+(n+原创 2021-09-24 12:58:55 · 977 阅读 · 0 评论 -
移除未排序链表中的重复节点,保留最开始出现的节点
编写代码,移除未排序链表中的重复节点。保留最开始出现的节点。示例1: 输入:[1, 2, 3, 3, 2, 1] 输出:[1, 2, 3]示例2: 输入:[1, 1, 1, 1, 2] 输出:[1, 2]提示:链表长度在[0, 20000]范围内。链表元素在[0, 20000]范围内。//思路:创建一个大于20000的数组,使用0和1标记数字是否出现过struct ListNode* removeDuplicateNodes(struct ListNode* head){原创 2021-09-23 21:17:28 · 352 阅读 · 0 评论