劍指offer56 刪除鍊錶中重複的節點

2022-08-19 05:30:16 字數 614 閱讀 1622

在乙個排序的鍊錶中,存在重複的結點,請刪除該鍊錶中重複的結點,重複的結點不保留,返回煉表頭指標。 例如,鍊錶1->2->3->3->4->4->5 處理後為 1->2->5

注意如果是頭結點的判斷

另外,每次->next的時候都需要判斷當前節點是否為空

/*

struct listnode

};*/

class

solution

//如果left指向鍊錶中第乙個元素,left -> ... -> right ->... , 將指向鍊錶第乙個元素的指標phead指向right->next。

if( left ==phead )

else

//如果left不指向鍊錶中第乙個元素,head -> pre->left ->...->right ->... 即pre->next = right->next

//當前處理的left要更新

left = right->next; //

即pre->next

}

else

//left下乙個和left不相同

}return

phead;

}};

劍指offer56 刪除鍊錶中重複的結點

在乙個排序的鍊錶中,存在重複的結點,請刪除該鍊錶中重複的結點,重複的結點不保留,返回煉表頭指標。例如,鍊錶1 2 3 3 4 4 5 處理後為 1 2 5 注意是把重複的刪除,不是刪掉重複的 coding utf 8 class listnode def init self,x self.val x...

劍指offer56 刪除鍊錶中的重複結點

在乙個排序的鍊錶中,存在重複的結點,請刪除該鍊錶中重複的結點,重複的結點不保留,返回煉表頭指標。例如,鍊錶1 2 3 3 4 4 5 處理後為 1 2 5 思路1 用乙個set來記錄重複的結點 class solution listnode new phead newlistnode 1 這個操作主...

劍指offer 56 刪除有序鍊錶中的重複結點

56.刪除有序鍊錶中的重複結點 在乙個排序的鍊錶中,存在重複的結點,請刪除該鍊錶中重複的結點,重複的結點不保留,返回煉表頭指標。例如,鍊錶1 2 3 3 4 4 5 處理後為 1 2 5 借助輔助頭結點,可避免單獨討論頭結點的情況。設定兩個結點 pre 和 cur,當 cur 和 cur.next ...