leetcode24-两两交换链表图解
作者:互联网
给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。
你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。
示例:
给定 1->2->3->4, 你应该返回 2->1->4->3.
先添加一个空表头,然后再交换,交换过程如下:
Python代码如下:
class Solution(object): def swapPairs(self, head): """ :type head: ListNode :rtype: ListNode """ if head==None: return None Thead=ListNode(-1) Thead.next=head #创建空表头 c=Thead#创建头指针 while c.next and c.next.next: a=c.next b=c.next.next c.next=b #第一步 a.next=b.next #第二步 b.next=a #第三步 c=c.next.next#指针移动两位 return Thead.next #返回链
标签:head,ListNode,交换,next,链表,leetcode24,图解,Thead 来源: https://www.cnblogs.com/xiao-longxia/p/12492468.html