题解 | #删除有序链表中重复的元素-I#

删除有序链表中重复的元素-I

https://www.nowcoder.com/practice/c087914fae584da886a0091e877f2c79

class Solution {
public:
    ListNode* deleteDuplicates(ListNode* head) {
        if(head==nullptr||head->next==nullptr) return head;
        auto a=head;
        auto c=new ListNode(-1);
        auto b=c;
        while(a!=nullptr&&a->next!=nullptr)
        {
            if(a->val==a->next->val)
            {
                a=a->next;
            }
            else
            {
                b->next=a;
                b=b->next;
                a=a->next;
            }
        }
        b->next=a;
        return c->next;
    }
};

不是为什么第十行要用(a->val==a->next->val)来判定肯否条件而不是用(a==a->next)?我知道判定得是值,但是难不成它的判定条件是整个后续?

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务