-
声明: 转载文字或图片请在文首注明出处,
3Q. -
原理: 我们设置两个指针
slow和fast,slow每次移动一步,fast每次移动两步。 -
伪码:
slow , fast = head, head
while(fast.next and fast.next.next):
slow = slow.next
fast = fast.next.next
-
解释: 设链表长度为
L, 每个结点编号为1,2, ..., L。 若L等于偶数, 则fast停下时,slow停在编号为L//2的结点上;若L等于奇数, 则fast停下时,slow停在编号为L//2 + 1的结点上。 -
示例,
L=1:
-
示例,
L=2:
-
示例,
L=3:
-
示例,
L=4:
-
示例,
L=5:
-
示例,
L=6:
作 者: 月牙眼的楼下小黑
联 系: zhanglf_tmac (Wechat)
声 明: 欢迎转载本文中的图片或文字,请说明出处









网友评论