LeetCode--82--刪除排序鏈表中的重複元素 II

題目描述:
給定一個排序鏈表,刪除所有含有重複數字的節點,只保留原始鏈表中 沒有重複出現 的數字。
輸入:
1->2->3->3->4->4->5
1->1->1->2->3
輸出:
1->2->5
2->3
題意:
題目描述
題解
直接搞
代碼:

/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) { val = x; }
 * }
 */
class Solution {
    public ListNode deleteDuplicates(ListNode head) {
        ListNode no1 = new ListNode(0);no1.next = head;
        ListNode p1 = no1,p2 = head;
        int r = 0;
        while(p1.next != null){
            while(p2.next != null && p2.next.val == p1.next.val){
                p2 = p2.next;
                r = 1;
            }
            if(r == 1){
                p1.next = p2.next;
                p2 = p2.next;
                r = 0;
            }
            else{
                p1 = p2;
                if(p2.next != null) p2 = p2.next;
            }
        }
        return no1.next;
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章