如果链表中至少有两个节点,我们可以将第一个节点和第二个节点进行交换。交换后,第二个节点变为新的头节点,第一个节点变为新的第二个节点。 我们将原链表的头节点指向第二个节点,即交换后的新头节点。然后,将原头节点的next指针指向递归调用swapPairs函数的返回结果,即第三个节点和后面节点交换后的链表。 最后,...
24. 两两交换链表中的节点 Swap Nodes in Pairs LeetCodeCN 第24题链接 记录当前节点的前一个节点,当当前节点和下一节点都存在时,三元交换三个节点的next指针 返回交换完后的首节点 classSolution:defswapPairs(self,head:ListNode)->ListNode:pre,pre.next=self,headwhilepre.nextandpre.next.next:l=pre.next...
def swapPairs(self, head: ListNode) -> ListNode: # 如果链表为空,或者只有一个节点,直接返回 head if not head or not head.next: return head # 需交换的前后节点 front_node = head tail_node = head.next # 交换节点 front_node.next = self.swapPairs(tail_node.next) tail_node.next = front...