C#LeetCode刷题之#141-环形链表(Linked List Cycle)
2024-08-30 04:11:03
问题
该文章的最新版本已迁移至个人博客【比特飞】,单击链接 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
分析:
显而易见,以上算法的时间复杂度为: 。
最新文章
- AngularJS移动开发中的各种坑
- 配置 DHCP 服务 - 每天5分钟玩转 OpenStack(89)
- java.lang.NoClassDefFoundError: org/objectweb/asm/Type
- vlan与交换机端口模式Access,Hybrid,Trunk
- jQuery页面加载后执行的事件(3种方式)
- (转)C#操作PPT
- Java令牌生成器
- VHDL TestBench基础(转)
- 我的eclipse插件推荐
- Air Raid(最小路径覆盖)
- Simditor图片上传
- SpringMVC实现返回不同视图
- new Image的API
- [Swift]LeetCode827. 最大人工岛 | Making A Large Island
- 利用Visual Studio 2017的扩展开发(VSIX、ItemTemplate) 快速实现项目的半自动化搭建
- php url函数
- 4.2Python数据处理篇之Matplotlib系列(二)---plt.scatter()散点图
- Handler Runnable 自动执行 循环 连续 延时
- UVaLive 3704 Cellular Automaton (循环矩阵 + 矩阵快速幂)
- Castle ActiveRecord学习(四)延迟加载、分页查询、where条件