• (链表) 83. Remove Duplicates from Sorted List


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

    Example 1:

    Input: 1->1->2
    Output: 1->2
    

    Example 2:

    Input: 1->1->2->3->3
    Output: 1->2->3

    --------------------------------------------------------------------------------
    这个题说的是把一个已经排序好的链表删掉重复值,注意题目中的sorted linked list,指的是以及排序好的,所以不必想的那么复杂。
    C++代码:
    /**
     * Definition for singly-linked list.
     * struct ListNode {
     *     int val;
     *     ListNode *next;
     *     ListNode(int x) : val(x), next(NULL) {}
     * };
     */
    class Solution {
    public:
        //map<int,int> mp;
        ListNode* deleteDuplicates(ListNode* head) {
            /*
            ListNode *p = new ListNode(-1);
            p->next = head;
            ListNode *cur;
            cur = p;
            while(cur->next){
                if(!mp.count(cur->next->val)){
                    mp[cur->next->val]++;
                    cur = cur->next;
                }
                else{
                    cur->next = cur->next->next;
                }
            }
            return p->next;
            */
          
         //如果所在的节点和下一个节点的值相等,删除下一个节点,否则,指向这个结点的指针移动到下一个节点的位置。 ListNode *cur = head; while(cur && cur ->next){ if(cur->val == cur->next->val){ cur->next = cur->next->next; } else cur = cur->next; } return head; } };
  • 相关阅读:
    第二次冲刺每日站立会议10(完结)
    第二次冲刺每日站立会议09
    第二次冲刺每日站立会议08
    找bug
    测试计划
    博客园的意见与建议
    第二次每日站立会议07
    个人总结
    学习进度条(第十六周)
    梦断代码阅读笔记03
  • 原文地址:https://www.cnblogs.com/Weixu-Liu/p/10704011.html
Copyright © 2020-2023  润新知