@TOC

83.删除排序链表中的重复元素:

题目:

解题思路:

1. 判断head指针的情况:当head指针为空时,即链表为空,就没有必要  进行后续判断了;当head指针的后继节点为空时,说明链表只有一个  节点head,直接返回head即可
2. 判断边界条件判断:当p->next->next == NULL时,即最后俩个节点进  行比较时,若用p->next = p->next->next进行去重操作,会出现空指针  的问题。
3. 链表中的去重操作用 p->next = p->next->next即可

源码:

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/struct ListNode* deleteDuplicates(struct ListNode* head){struct ListNode *p;p = head;if(head == NULL)return NULL;if(head->next == NULL)return head;while(p->next != NULL){if(p->val == p->next->val){p->next = p->next->next;}else{p = p->next;}}return head;
}

踩坑点:

1.空指针问题:

当使用q = p->next时,测试结果正确,但是提交后会产生空指针错误

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     struct ListNode *next;* };*/struct ListNode* deleteDuplicates(struct ListNode* head){struct ListNode *p;struct ListNode *q;p = head;q = p->next;while(q != NULL){if(p->val == q->val){p->next = q->next;q = q->next;}else{p = p->next;q = q->next;}}return head;
}

重要重要重要: 怎么解决小编也无能为力(其实小编是个渣渣,请叫我渣渣编),哪位大佬能解决请联系小编或评论留言哈

LeetCode篇之链表:83(去重问题)相关推荐

  1. LeetCode篇之链表:1290(二进制链表转整数)

    LeetCode篇之链表:1290-->二进制链表转整数 1290. 二进制链表转整数 题目: 解题思路: 源码: 改进: 踩坑点: 1290. 二进制链表转整数 题目: 解题思路: 1.先遍历 ...

  2. LeetCode 92反转链表Ⅱ93复制ip地址94二叉树的中序遍历

    微信搜一搜:bigsai 专注于Java.数据结构与算法,一起进大厂不迷路! 算法文章题解全部收录在github仓库bigsai-algorithm,求star! 关注回复进群即可加入力扣打卡群,欢迎 ...

  3. 学长冷月带你怒刷LeetCode之反转链表

    本文目录 前言 题目描述 冷月题解 总结一下 前言 链表的操作是数据结构中最基础的算法之一,反转列表也是一道经典的笔试题.很多公司的面试题库中都有这道题,有的公司明确题目要求不能使用额外的节点存储空间 ...

  4. leetcode 中的链表简单题 python3

    目录: 基本使用 // 21题 合并有序链表 // 83题 删除有序链表重复元素 // 141题 环形链表 // 160题 相交链表 // 203题 移除链表元素// 206题 反转链表 // 基本使 ...

  5. LeetCode篇之栈:155(常数时间复杂度内找最小栈)

    LeetCode篇之栈:155-->最小栈 题目: 解题思路: 源码: 踩坑点: 题目: 解题思路: 源码: typedef struct Linknode{int data;int min;s ...

  6. LeetCode篇之栈:20(括号匹配问题)

    LeetCode篇之栈:20-->括号匹配问题 题目: 解题思路: 源码: 踩坑点: 题目: 解题思路: 源码: bool isValid(char * s){char *stack = (ch ...

  7. LeetCode Python实现 链表简单部分

    LeetCode Python实现 链表简单部分 我以前完全没有写过关于链表的东西,node.val=node.next.val#当前值被后一个值覆盖node.next=node.next.next# ...

  8. [链表|多解法] leetcode 19 删除链表的倒数第N个节点

    [链表|多解法] leetcode 19 删除链表的倒数第N个节点 1.题目 题目链接 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2-&g ...

  9. LeetCode:旋转链表【61】

    LeetCode:旋转链表[61] 题目描述 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: 1->2->3->4->5- ...

最新文章

  1. 最全pandas函数用法速查手册(高清版)
  2. vs-halcon-大恒相机配置
  3. 用python播放音乐_Python实例讲解 -- 定时播放 (闹钟+音乐)
  4. ALV面向对象方法研究:添加自定义工具栏(三)
  5. 使用 PHPMAILER 发送邮件实例
  6. springMVC简单实例
  7. boost::local_time模块实现打印本地日期时间的测试程序
  8. P4180-[BJWC2010]严格次小生成树【Kruskal,倍增】
  9. 浅谈点击信号对搜索的影响
  10. C++判断字符是字母或数字
  11. g6-editor 使用
  12. python 3d绘图立方体_python绘制3D立方体
  13. 反向传播算法的详细解释(下)
  14. ASP.NET应用开发心得
  15. 中挪动正请求第三方支出牌照竖立支出公司
  16. 开发一个 app 有多难?
  17. 二年级语文备课组集体备课观摩活动
  18. CapsNet胶囊网络
  19. 给自己一个拼搏的理由
  20. leetcode刷题目录总结

热门文章

  1. 阿里程序员双11语录走红
  2. 10个奇葩的代码注释,笑出声!
  3. insert自动跳过存在数据_轻松入门mongo 数据库
  4. ubuntu下安装django
  5. 尤其适合程序员使用的TextMate for Mac
  6. linux x64 ffmpeg,ffmpeg编译arm64动态包
  7. 1.3 编程基础之算术表达式与顺序执行 08 温度表达转化
  8. 1949:【10NOIP普及组】数字统计
  9. 【原型设计】第四节:Axure RP9 交面交互的使用说明 01 打开链接交互效果
  10. Qt文档阅读笔记-void QObject::deleteLater()解析