leetcode Linked List Cycle
2015-09-01 09:17
411 查看
题目链接
思路:
快慢指针。。。当有环出现的时候。我们可以想象出现了一个400米的跑道。。那么如果跑的快的人和跑的慢的人一直在里面跑的话,那么迟早会扣圈。。。我这里快的人每次跑2步,慢的人一次跑1步。。但是这个步数不是随便选的,具体怎么选可以看看资料。。
思路:
快慢指针。。。当有环出现的时候。我们可以想象出现了一个400米的跑道。。那么如果跑的快的人和跑的慢的人一直在里面跑的话,那么迟早会扣圈。。。我这里快的人每次跑2步,慢的人一次跑1步。。但是这个步数不是随便选的,具体怎么选可以看看资料。。
/** * Definition for singly-linked list. * class ListNode { * int val; * ListNode next; * ListNode(int x) { * val = x; * next = null; * } * } */ public class Solution { public boolean hasCycle(ListNode head) { if(head==null) { return false; } ListNode pre=head; ListNode tail=head; while(true) { if(pre!=null&&pre.next!=null) { pre=pre.next.next; tail=tail.next; } else { break; } if(pre==tail) { return true; } } return false; } }
相关文章推荐
- Objective-C 【电商APP应用代码-系统分析-详细注释-代码实现】
- Objective-C 【电商APP应用代码-系统分析-详细注释-代码实现】
- RAD XE10 Seattle
- 常用的android开发框架有哪些
- 约会实体中的状态:已开启,已计划
- C#语法糖
- WPF自定义控件第一 - 进度条控件
- LXC1.0.7-- lxc-start 源码分析 02
- Struts流程图
- Source Insight 的应用技巧
- Js 时间间隔计算(间隔天数)
- 进程线程的理解
- C# 画图
- Ubuntu 14.04 source list: http://cn.archive.ubuntu.com
- HDU 5117(简单背包dp)
- LeetCode之Valid Anagram
- 史上最浅显易懂的Git教程!
- uva 11374 Airport Express 机场快线 迪杰斯特拉算法
- JBPM流程实例(PI)Process Instance
- B树的基本例程(1)插入