【LeetCode】【24】【Swap Nodes in Pairs】
阿新 • • 發佈:2018-12-12
題目:Given a linked list, swap every two adjacent nodes and return its head.
解題思路:這個題還是比較容易的吧,兩個一組把後面的插入到前面的連結串列中。注意不要斷鏈。
程式碼:
class ListNode { int val; ListNode next; ListNode(int x) { val = x; } } public ListNode swapPairs(ListNode head) { if(head == null)return null; ListNode n1 = head,n2 = head.next; ListNode dummyNode = new ListNode(-1); dummyNode.next = head; ListNode pre = dummyNode; ListNode t1; while (n1 != null && n2 != null){ t1 = n2.next; n1.next = n2.next; pre.next = n2; n2.next = n1; pre = n1; n1 = t1; if(t1!=null)n2 = t1.next; } return dummyNode.next; }