本文主要是介绍力扣,两两交换链表中的节点,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
class Solution {
public static ListNode swapPairs(ListNode head) {
if(head==null||head.next==null) return head;
ListNode result=null;
ListNode index=head;
// 记录链表的交换前的前置节点位置
ListNode pre=null;
while (index!=null&&index.next!=null){
ListNode next=index.next.next;
ListNode tem=index;
index=index.next;
index.next=tem;
tem.next=next;
if(result==null)
result=index;
if(pre==null){
pre=index.next;
}else{
// 更新前置节点指向的后续节点
pre.next=index;
// 前置节点移动下位置
pre=index.next;
}
index=next;
}
return result;
}
}
这篇关于力扣,两两交换链表中的节点的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!