1. 原題鏈接:https://leetcode.com/problems/remove-duplicates-from-sorted-list/
2. 解題思路
- 洗掉鏈表節點會涉及到兩個指標:prev指標和cur指標
3. 演算法
- prev指標和cur指標分別指向前兩個節點
- 從cur指向的節點開始回圈遍歷,當prev和cur的val相同時,將prev指向cur->next節點;否則prev指向cur的節點
4. 實作
struct ListNode {
int val;
ListNode *next;
ListNode(int x) : val(x), next(NULL) {}
};
class Solution {
public:
ListNode* deleteDuplicates(ListNode* head) {
if(head == NULL) return head;
ListNode *prev = head;
for(ListNode *cur = prev->next; cur != NULL; cur = cur->next){
if(prev->val == cur->val){
prev->next = cur->next;
}else{
prev = cur;
}
}
return head;
}
};
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/88237.html
標籤:其他
上一篇:計算機網路 csma/cd協議
下一篇:npf無法開啟
