javascript-leetcode
javascript-leetcode copied to clipboard
876. 链表的中间结点
快慢指针
老套路,借助快慢指针,fast 一次走两步,slow 一次走一步,当 fast 到达链表末尾时,slow 就处于链表的中间点了。
const middleNode = function(head) {
let fast = head, slow = head;
while (fast && fast.next) {
slow = slow.next;
fast = fast.next.next;
}
return slow;
};
- 时间复杂度: O(n)
- 空间复杂度: O(1)