LeetCode 83. Remove Duplicates from Sorted List

来源:互联网 发布:linux中telnet命令 编辑:程序博客网 时间:2024/05/16 00:48

题目:
Given a sorted linked list, delete all duplicates such that each element appear only once.

For example:
Given 1->1->2, return 1->2.
Given 1->1->2->3->3, return 1->2->3.

思路:
删除链表中的重复节点

代码:

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode(int x) : val(x), next(NULL) {}* };*/class Solution {public:    ListNode* deleteDuplicates(ListNode* head) {        ListNode* node = head;        if (head == NULL){            return head;        }        while (node->next != NULL){//还没到倒数第二个节点             if (node->val == node->next->val){//如果当前节点的值和下个一的值相等                ListNode* del = node->next;                node->next = node->next->next;//删除下一个节点                delete del;            }            else{//不然就后移                 node = node->next;            }        }        return head;    }};
0 0