问题

该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/3901 访问。

给定一个链表,判断链表中是否有环。

进阶:

你能否不使用额外空间解决此题?


Given a linked list, determine if it has a cycle in it.

Follow up:

Can you solve it without using extra space?


示例

该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/3901 访问。

public class Program {

    public static void Main(string[] args) {
var head = new ListNode(1) {
next = new ListNode(2) {
next = new ListNode(1) {
next = new ListNode(2) {
next = new ListNode(3)
}
}
}
}; var res = HasCycle(head);
Console.WriteLine(res); Console.ReadKey();
} private static bool HasCycle(ListNode head) {
var pointer = head;
while(pointer != null && pointer.next != null) {
head = head.next;
pointer = pointer.next.next;
if(pointer == head) return true;
}
return false;
} public class ListNode {
public int val;
public ListNode next;
public ListNode(int x) { val = x; }
} }

以上给出1种算法实现,以下是这个案例的输出结果:

该文章的最新版本已迁移至个人博客【比特飞】,单击链接 https://www.byteflying.com/archives/3901 访问。

False

分析:

显而易见,以上算法的时间复杂度为: 

最新文章

  1. AngularJS移动开发中的各种坑
  2. 配置 DHCP 服务 - 每天5分钟玩转 OpenStack(89)
  3. java.lang.NoClassDefFoundError: org/objectweb/asm/Type
  4. vlan与交换机端口模式Access,Hybrid,Trunk
  5. jQuery页面加载后执行的事件(3种方式)
  6. (转)C#操作PPT
  7. Java令牌生成器
  8. VHDL TestBench基础(转)
  9. 我的eclipse插件推荐
  10. Air Raid(最小路径覆盖)
  11. Simditor图片上传
  12. SpringMVC实现返回不同视图
  13. new Image的API
  14. [Swift]LeetCode827. 最大人工岛 | Making A Large Island
  15. 利用Visual Studio 2017的扩展开发(VSIX、ItemTemplate) 快速实现项目的半自动化搭建
  16. php url函数
  17. 4.2Python数据处理篇之Matplotlib系列(二)---plt.scatter()散点图
  18. Handler Runnable 自动执行 循环 连续 延时
  19. UVaLive 3704 Cellular Automaton (循环矩阵 + 矩阵快速幂)
  20. Castle ActiveRecord学习(四)延迟加载、分页查询、where条件

热门文章

  1. 技术干货:Ceph搭建硬件建议详解
  2. java大数据最全课程学习笔记(5)--MapReduce精通(一)
  3. 学习jvm(一)--java内存区域
  4. Puppeteer爬虫实战(三)
  5. Netty 学习笔记(2) ------ 数据传输载体ByteBuf
  6. R 基础绘图体系-基础篇
  7. 命令 chatter Lsaattr dirname Basename
  8. Centos7安装Docker1.9.1
  9. MyBatis动态插入的实现
  10. mac下高效安装 homebrew 及完美避坑姿势 (亲测有效)