想象中的自由快乐,从来都有它的边界与代价。老子曰:“有之以为利,无之以为用”,兴趣之所以吸引人,正是它远离功利动机的“无用”之用,让人可以自由自在,沉浸在心流之中。而一旦兴趣成为任务,我们总会为了具体的目标而奔走。要是再作为一项工作,各种辅助性、支撑性的事情也会接踵而至。
Leetcode原题141.环形链表
采用快慢双指针fast和slow. 快指针fast每次走2下,慢指针一次走一下。如果存在环形,那么总会有机会快指针会追上慢指针,两个在一个节点处相遇。
//采用快慢双指针
public boolean hasCycle(ListNode head) {
if (head == null) {
return false;
}
ListNode fast = head;//快指针,每次走2步
ListNode slow = head;//慢指针,每次走1步
while (fast.next != null && fast.next.next != null) {
fast = fast.next.next;
slow = slow.next;
//当快指针赶上慢指针,两指针有重叠时,说明是个环形链表
if (slow == fast)
return true;
}
return false;
}
有兴趣的老爷,还可以关注我的公众号【一起收破烂】,回复【006】获取 最新java面试资料以及简历模型120套哦~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)