1. 程式人生 > >LeetCode 第24題 刪除排序數組中的重復項

LeetCode 第24題 刪除排序數組中的重復項

lis swap == 重復項 public 進行 leet 刪除 nod


/*
給定一個鏈表,兩兩交換其中相鄰的節點,並返回交換後的鏈表。

示例:

給定 1->2->3->4, 你應該返回 2->1->4->3.
說明:

你的算法只能使用常數的額外空間。
你不能只是單純的改變節點內部的值,而是需要實際的進行節點交換。
*/

/*/
思路:簡單鏈表置換 為了操作方便,定義三個指針,用於置換
*/


 1 class Solution24 {
 2 
 3   public ListNode swapPairs(ListNode head) {
 4     if (head == null || head.next == null
) { 5 return head; 6 } 7 ListNode dummy = new ListNode(0); 8 dummy.next = head; 9 ListNode preNode = dummy; 10 while (preNode.next != null && preNode.next.next != null) { 11 ListNode nodeLeft = preNode.next; 12 ListNode nodeRight = preNode.next.next;
13 preNode.next = nodeRight; 14 nodeLeft.next = nodeRight.next; 15 nodeRight.next = nodeLeft; 16 preNode = preNode.next.next; 17 } 18 return dummy.next; 19 } 20 }

LeetCode 第24題 刪除排序數組中的重復項