LeetCode 24. 两两交换链表中的节点python3
原题链接
中等
作者:
xanxus1111
,
2020-06-16 11:43:38
,
所有人可见
,
阅读 403
<!--class Solution:-->
<!-- def swapPairs(self, head: ListNode) -> ListNode:-->
<!-- ne = head-->
<!-- while ne:-->
<!-- if ne.next: #不交换节点 只交换节点值-->
<!-- t = ne.next.val-->
<!-- ne.next.val = ne.val-->
<!-- ne.val = t-->
<!-- else:break-->
<!-- if ne.next.next: #每交换完两个值后直接检查下下个节点-->
<!-- ne = ne.next.next-->
<!-- else:-->
<!-- break-->
<!-- return head-->
class Solution:
def swapPairs(self, head: ListNode) -> ListNode:
v = ListNode(-1)
v.next = head
p = v
while p.next and p.next.next:
a, b=p.next, p.next.next
p.next = b
a.next = b.next
b.next = a
p = a
return v.next