leetcode24-两两交换链表图解
Posted 小龙虾爱大龙虾
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 #返回链
以上是关于leetcode24-两两交换链表图解的主要内容,如果未能解决你的问题,请参考以下文章