There is a single direction linked list. Please give the 50th element from the end of the given list.
这道题考察的是单向链表的倒数第 k 个节点查找,核心思路通常是双指针:先让快指针向前走 50 步,然后快慢指针同时前进,直到快指针到达末尾,此时慢指针所在位置就是倒数第 50 个元素。这样只需要一次遍历,时间复杂度为 O(n),空间复杂度为 O(1)。如果链表长度不足 50,则需要根据题意处理为空或不存在的情况。
正文完