编写一个程序,找到两个单链表相交的起始节点。
输入:intersectVal = 8, listA = [4,1,8,4,5], listB = [5,0,1,8,4,5], skipA = 2, skipB = 3
输出:Reference of the node with value = 8
输入解释:相交节点的值为 8 (注意,如果两个列表相交则不能为 0)。
从各自的表头开始算起,链表 A 为 [4,1,8,4,5],链表 B 为 [5,0,1,8,4,5]。
在 A 中,相交节点前有
链表中倒数第k个结点(python)
题目
输入一个链表,输出该链表中倒数第k个结点。
思路
用两个指针,指针p、q最开始都指向 head,p 先向右移动 k 位,然后 p 和 q 再一起同步向右移动,当 p 到达边界时(p指向空), q 正好指向了倒数第 k 个结点
做完这些还不能通过牛客网的测试,因为出现了 k 会大于整个链表长度的情况,因此在 p 向右边移动的时候做出判断,如果在移动到 k 位之前 p 就已经到达边界了,那么直接返回空即可
代码
class Solution:
de