Linked List Cycle
2015-07-22 23:25
471 查看
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?
采用快慢指针实现,快指针总会赶上慢指针。
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: bool hasCycle(ListNode *head) { if(NULL == head||NULL == head->next) return false; ListNode *quick = head,*slow =head; while(quick!= NULL && quick->next != NULL) { quick = quick->next->next; slow = slow->next; if(quick == slow) return true; } return false; } };
相关文章推荐
- bzoj4143
- C++初始化成员列表,符合类,const修饰函数
- 用链表创建栈 以及用数组创建栈的区别
- NSString写入文件和导出文件
- LRU Cache
- java中时分秒的取得与转换
- [c]HDOJ1874 Dijkstra算法求最短路径
- qsort和sort学习与比较
- 7.22日志
- 源码分析Activity启动的流程
- iOS swift使用xib绘制UIView
- UIViewController的生命周期及iOS程序执行顺序
- 大图片加载问题理解解决面试官问
- 一步一步搭建Svn+Apache环境
- autofac 一个接口多个实现的顺序执行
- OC语言的第四天 static、self、super、继承、NSObject类、私有属性和私有方法、多态
- python web服务质量分析
- ThinkPHP缓存文件写入失败!:./Runtime/Cache/..
- ARC与MRC
- 读C++ Primer 之句柄类