linked-list-cycle——链表、判断是否循环链表、快慢指针
2024-08-24 06:09:54
Given a linked list, determine if it has a cycle in it.
Follow up:
Can you solve it without using extra space?
若在while开始时判断fast==slow,会出现误判,即第一次循环时fast必定等于slow
/**
* 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(head==NULL)
return false;
ListNode *slow=head,*fast=head;
while(fast!=NULL&&fast->next!=NULL){ fast=fast->next->next;
slow=slow->next;
if(fast==slow)
return true; }
return false;
}
};
最新文章
- 用SignalR 2.0开发客服系统[系列5:使用SignalR的中文简体语言包和其他技术点]
- ADT Ubuntu X64 下ia32-libs替换等【待编辑】
- nsq初探
- dubbo2.5.3 与spring 3.1.x 冲突
- VS2012 OpenCV2.4.9 Debug可以允许,Release不可以
- Django1.9开发博客(12)- i18n国际化
- flask 程序结构概括
- AJAX POST&;跨域 解决方案 - CORS(转载)
- 可以使用Markdown了?
- javascript——面向对象程序设计(1)
- 使用require.js时,解决AMD封装jquery1.4.1的问题。
- twitter接口开发
- input中range相关操作
- Redis多服务器负载均衡的实现
- 从数据库读取数据并动态生成easyui tree构结
- 【论文速读】Cong_Yao_CVPR2017_EAST_An_Efficient_and_Accurate_Scene_Text_Detector
- [转]Deep Reinforcement Learning Based Trading Application at JP Morgan Chase
- synchronized 和 lock 的区别
- c#不同数组之间的转换【转载,消化自动删除】
- linux里tmpfs文件系统