题目链接: https://leetcode-cn.com/problems/middle-of-the-linked-list/
思路:用快慢指针,快指针每次走2步,慢指针每次走1步,路程相同(链表长度一定)的情况下,快指针的速度是慢指针的2倍,当快指针走完链表的时候,慢指针在链表的中间点。
var middleNode = function(head) {
slow = fast = head;
while (fast && fast.next) { // 注意判断条件,fast是会先遍历完链表的,要保证fast.next不为空
slow = slow.next;
fast = fast.next.next;
}
return slow;
};
网友评论