class Solution {
public ListNode swapPairs(ListNode head) {
ListNode dummyNode = new ListNode(0); //创建虚拟头结点
dummyNode.next = head;
ListNode prev = dummyNode;
while (prev.next != null && prev.next.next != null) {
ListNode temp = head.next.next; // 缓存 next
prev.next = head.next; // 将 prev 的 next 改为 head 的 next
head.next.next = head; // 将 head.next(prev.next) 的next,指向 head
head.next = temp; // 将head 的 next 接上缓存的temp
prev = head; // 步进1位
head = head.next; // 步进1位
}
return dummyNode.next;
}
}
LeetCode_24:两两交换链表中的结点:Java
最新推荐文章于 2025-08-16 00:47:01 发布