https://oj.leetcode.com/problems/linked-list-cycle/

判断一个链表是否为循环链表(这个链表可能是 1 2 3 4 然后4指向2)

巧妙的方法:设置两个指针,一个slow,一个fast。每次slow走一个,fast走两个,如果是循环链表,它俩有相等的时候。

 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;
ListNode *fast = head->next; while(fast)
{
if(slow == fast)
return true; slow = slow->next;
if(fast->next)
fast = fast->next->next;
else
break;
}
return false;
}
};

最新文章

  1. Z.ExtensionMethods 一个强大的开源扩展库
  2. C库函数使用与总结之时间函数
  3. [Machine Learning] 机器学习常见算法分类汇总
  4. [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配
  5. 在CentOS上搭建PHP服务器环境
  6. C#控制鼠标位置
  7. html标和下标应用
  8. JQuery的两个each方法的注意点
  9. ICE BOX 配置,使用----第一篇
  10. Vue.js实例
  11. Hadoop学习笔记-008-CentOS_6.5_64_yum安装mysql
  12. (DP) 关于最优三角剖分
  13. oracle存储过程调试报错  ORA-0131 Insufficient privileges 处理
  14. SoapUI测试WebService接口
  15. ML.NET 示例:深度学习之集成TensorFlow
  16. linux的nohup命令
  17. JavaScript中Object值合并方法
  18. Centos7搭建LAMP+Typecho博客
  19. (伪)再扩展中国剩余定理(洛谷P4774 [NOI2018]屠龙勇士)(中国剩余定理,扩展欧几里德,multiset)
  20. intellij IDEA 安装和配置和使用

热门文章

  1. [USACO]玉米实验(单调队列)
  2. Python 交互模式中 Delete/Backspace 键乱码问题
  3. MVC中Spring.net 对基类控制器无效 过滤器控制器无效
  4. MySQL之索引(四)
  5. IE下Date.parse出现NaN有关问题解决
  6. Android数据储存之SQLiteDatabase SQLiteOpenHelper类的简单使用
  7. (转)对称加密与非对称加密,以及RSA的原理
  8. post方式的数据抓取
  9. DOM中的节点属性
  10. "二进制" 转化为 "十六进制