LeetCode OJ-141. Linked List Cycle(链表找环)
来源:互联网 发布:网络创业优势 编辑:程序博客网 时间:2024/06/07 20:55
141. Linked List Cycle
Given a linked list, determine if it has a cycle in it.
Follow up:
Can you solve it without using extra space?
对于LeetCode上,使用这个方法是没法通过的,随时结果没问题。这里则要使用另一种方法,如果链表是存在环的,那么在环的入口点继续遍历,将可能反复地遍历到这个环入口点,所以这里就可以使用两个变量来记录节点,让一个以步长1遍历,另一个以步长2遍历,显然步长2的遍历方式将会比步长1的快,若链表存在环,步长2的遍历方式将会在某时刻与步长1的遍历方式相遇。具体代码如下:
/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */bool hasCycle(struct ListNode *head) { struct ListNode *one = head; struct ListNode *two = head; while (one != NULL && two != NULL && two->next != NULL) { one = one->next; two = two->next->next; if (one == two) { return true; } } return false;}
0 0
- LeetCode OJ-141. Linked List Cycle(链表找环)
- LeetCode OJ 141. Linked List Cycle
- LeetCode OJ:Linked List Cycle
- [LeetCode OJ]Linked List Cycle
- LeetCode OJ Linked List Cycle
- LeetCode OJ:Linked List Cycle II
- [LeetCode OJ] Linked List Cycle 解题报告
- LeetCode OJ Linked List Cycle II
- [LeetCode]141.Linked List Cycle
- LeetCode 141. Linked List Cycle
- [Leetcode] 141. Linked List Cycle
- LeetCode 141. Linked List Cycle
- [leetcode] 141.Linked List Cycle
- leetcode 141.Linked List Cycle
- [leetcode] 141. Linked List Cycle
- [LeetCode]141. Linked List Cycle
- 141. Linked List Cycle LeetCode
- [LeetCode]141. Linked List Cycle
- C++引用折叠 —— 摘自维基百科
- 九大基础排序总结与对比
- 二分图模板
- Java虚拟机入门(2)------类加载机制(上)
- 在AndroidStudio中使用Kotlin
- LeetCode OJ-141. Linked List Cycle(链表找环)
- 自学java(6)继承类,超类和子类
- Emacs 下安装 python-mode.el
- 窝里割草,我不想说了
- 不用安装客户端访问ORACLE
- android 布局别名的应用
- MYSQL索引详解(学习记录)
- Ubuntu14.04 Shadowsocks服务器安装
- Java多线程-线程的同步(同步代码块)