leetcode做题笔记83删除排序链表中的重复元素

给定一个已排序的链表的头 head删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表

复制代码
输入:head = [1,1,2]
输出:[1,2]

思路一:模拟题意

cpp 复制代码
struct ListNode* deleteDuplicates(struct ListNode* head){
    if(head==NULL||head->next==NULL)return head;
    struct ListNode*p = head,*q = head->next;
    while(q!=NULL)
    {
        if(p->val==q->val)p->next = q->next;
        else{
        p = p->next;
    }
    q = q->next;
    }
    return head;   

}

分析:

本题与上题相似,但非将所有重复的元素删除,而是将多的重复元素删除,可添加判断语句判断前一个与后一个val值是否相等来决定是否放入链表中,最后输出链表

总结:

本题考察链表删除操作,添加好判断语句即可做出。

相关推荐
AI视觉网奇1 分钟前
ue5.7 配置 audio2face
笔记·ue5
AlenTech29 分钟前
207. 课程表 - 力扣(LeetCode)
算法·leetcode·职场和发展
练习时长一年1 小时前
LeetCode热题100(杨辉三角)
算法·leetcode·职场和发展
栈与堆2 小时前
LeetCode 19 - 删除链表的倒数第N个节点
java·开发语言·数据结构·python·算法·leetcode·链表
崎岖Qiu2 小时前
【OS笔记35】:文件系统的使用、实现与管理
笔记·操作系统·存储管理·文件系统·os
努力学算法的蒟蒻2 小时前
day58(1.9)——leetcode面试经典150
算法·leetcode·面试
曦月逸霜3 小时前
离散数学-学习笔记(持续更新中~)
笔记·学习·离散数学
hunter14503 小时前
windows server AD域与CA部署证书
笔记
im_AMBER3 小时前
Leetcode 101 对链表进行插入排序
数据结构·笔记·学习·算法·leetcode·排序算法
予枫的编程笔记3 小时前
【Java集合】深入浅出 Java HashMap:从链表到红黑树的“进化”之路
java·开发语言·数据结构·人工智能·链表·哈希算法