LeetCode篇之链表:83(去重问题)
@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(去重问题)相关推荐
- LeetCode篇之链表:1290(二进制链表转整数)
LeetCode篇之链表:1290-->二进制链表转整数 1290. 二进制链表转整数 题目: 解题思路: 源码: 改进: 踩坑点: 1290. 二进制链表转整数 题目: 解题思路: 1.先遍历 ...
- LeetCode 92反转链表Ⅱ93复制ip地址94二叉树的中序遍历
微信搜一搜:bigsai 专注于Java.数据结构与算法,一起进大厂不迷路! 算法文章题解全部收录在github仓库bigsai-algorithm,求star! 关注回复进群即可加入力扣打卡群,欢迎 ...
- 学长冷月带你怒刷LeetCode之反转链表
本文目录 前言 题目描述 冷月题解 总结一下 前言 链表的操作是数据结构中最基础的算法之一,反转列表也是一道经典的笔试题.很多公司的面试题库中都有这道题,有的公司明确题目要求不能使用额外的节点存储空间 ...
- leetcode 中的链表简单题 python3
目录: 基本使用 // 21题 合并有序链表 // 83题 删除有序链表重复元素 // 141题 环形链表 // 160题 相交链表 // 203题 移除链表元素// 206题 反转链表 // 基本使 ...
- LeetCode篇之栈:155(常数时间复杂度内找最小栈)
LeetCode篇之栈:155-->最小栈 题目: 解题思路: 源码: 踩坑点: 题目: 解题思路: 源码: typedef struct Linknode{int data;int min;s ...
- LeetCode篇之栈:20(括号匹配问题)
LeetCode篇之栈:20-->括号匹配问题 题目: 解题思路: 源码: 踩坑点: 题目: 解题思路: 源码: bool isValid(char * s){char *stack = (ch ...
- LeetCode Python实现 链表简单部分
LeetCode Python实现 链表简单部分 我以前完全没有写过关于链表的东西,node.val=node.next.val#当前值被后一个值覆盖node.next=node.next.next# ...
- [链表|多解法] leetcode 19 删除链表的倒数第N个节点
[链表|多解法] leetcode 19 删除链表的倒数第N个节点 1.题目 题目链接 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. 示例: 给定一个链表: 1->2-&g ...
- LeetCode:旋转链表【61】
LeetCode:旋转链表[61] 题目描述 给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数. 示例 1: 输入: 1->2->3->4->5- ...
最新文章
- 最全pandas函数用法速查手册(高清版)
- vs-halcon-大恒相机配置
- 用python播放音乐_Python实例讲解 -- 定时播放 (闹钟+音乐)
- ALV面向对象方法研究:添加自定义工具栏(三)
- 使用 PHPMAILER 发送邮件实例
- springMVC简单实例
- boost::local_time模块实现打印本地日期时间的测试程序
- P4180-[BJWC2010]严格次小生成树【Kruskal,倍增】
- 浅谈点击信号对搜索的影响
- C++判断字符是字母或数字
- g6-editor 使用
- python 3d绘图立方体_python绘制3D立方体
- 反向传播算法的详细解释(下)
- ASP.NET应用开发心得
- 中挪动正请求第三方支出牌照竖立支出公司
- 开发一个 app 有多难?
- 二年级语文备课组集体备课观摩活动
- CapsNet胶囊网络
- 给自己一个拼搏的理由
- leetcode刷题目录总结
热门文章
- 阿里程序员双11语录走红
- 10个奇葩的代码注释,笑出声!
- insert自动跳过存在数据_轻松入门mongo 数据库
- ubuntu下安装django
- 尤其适合程序员使用的TextMate for Mac
- linux x64 ffmpeg,ffmpeg编译arm64动态包
- 1.3 编程基础之算术表达式与顺序执行 08 温度表达转化
- 1949:【10NOIP普及组】数字统计
- 【原型设计】第四节:Axure RP9 交面交互的使用说明 01 打开链接交互效果
- Qt文档阅读笔记-void QObject::deleteLater()解析