题目
给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点
思路
引入虚拟头结点
代码
public ListNode swapPairs(ListNode head) {
ListNode dummy=new ListNode(-1);
dummy.next=head;
ListNode pre=dummy;
while(pre.next!=null&&pre.next.next!=null){
ListNode temp=head.next.next;
pre.next=head.next;
head.next.next=head;
head.next=temp;
pre=head;
head=head.next;
}
return dummy.next;
}