单链表的存储结构:

typedef struct LinkList{int data;LinkList * next;}

分析:
这里删除重复节点,分两种情况:
1.第一种是链表本身递增的
2.第二种是链表可能是无序的

无序的更复杂些,递增更简单些。

这里是递增,说明重复的结点是在一起的,连续的。
既然要删除结点,肯定要定义两个指针,pre,p

思路:
1.定义两个指针pre,p ,pre一开始指向第一个节点,p暂且不指向
2.通过while循环,条件为p !=null,
当pre->data == pre->next->data 时,一开始是第一,第二个节点比较
p = pre->next;
pre->next = p->next;
free( p);
否则 ,跳出循环
4.p后移。(p= p->next)

C代码实现:

void dels(LinkList *&L){LinkList * pre = L->next,*p;while(pre!= null){if(pre->data == pre->next->data){p = pre->next;pre->next = p->next;free(p);}else p=p->next;}}

单链表-删除重复节点(递增链表)相关推荐

  1. 删除链表重复节点 python_python无序链表删除重复项的方法

    题目描述: 给定一个没有排序的链表,去掉重复项,并保留原顺序 如: 1->3->1->5->5->7,去掉重复项后变为:1->3->5->7 方法: 顺 ...

  2. python链表删除尾部节点_python单链表中如何查找和删除节点?

    在之前的文章[python单链表中如何插入和输出节点?]中给大家介绍了单链表是什么,以及如何进行添加节点.输出所以节点.下面本篇文章给大家介绍如何查找和删除节点,希望对大家有所帮助. 如何从单链表中查 ...

  3. 面试题 02.01. 移除重复节点(链表删除操作模板)

    链表删除操作:(不带头节点的链表,加上虚拟头节点(dummyHead)删除head就不用单独讨论) 增加虚拟头节点和pre指针: 模板: //创建头节点 ListNode *dummyHead=new ...

  4. 链表相关操作:创建链表、遍历链表、求链表长度、链表中删除一个节点、链表中插入一个节点、反转单链表...

    1 #include<iostream> 2 #include<stdlib.h> 3 4 typedef struct node 5 { 6 int data; 7 stru ...

  5. 单链表删除指定节点c语言,在单链表删除指定节点之后的节点

    要删除在指定节点之后存在的节点,需要跳过所需数量的节点以到达节点,之后的节点将被删除. 需要跟踪这两个节点.如果在该节点之前存在的节点,则将删除该节点. 为此,使用了两个指针:ptr和ptr1. 使用 ...

  6. 无头单向链表删除中间节点-狸猫换太子

    题目来源:https://leetcode-cn.com/problems/delete-middle-node-lcci/ 实现一种算法,删除单向链表中间的某个节点(除了第一个和最后一个节点,不一定 ...

  7. 两个非递减链表合并为非递增链表(可重复)

    *题目:将两个非递减的有序链表合并为一个非递增的有序链表. * 要求结果链表仍使用原来两个链表的存储空间,不另外占用其他的存储空间. * 表中允许有重复的数据. 非递减是指两相邻数是递增或者相等的,非 ...

  8. c语言链表删除前一个节点,最简单的链表删除第一个节点时释放内存的问题

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 1 #include 2 #include "list.h" 3 4 int IsEmpty(List L) 5 { 6      r ...

  9. c语言链表删除重复点,【图片】想问一道链表题,如何删除重复元素【c语言吧】_百度贴吧...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 # include "iostream.h" # include "string.h" # include &qu ...

最新文章

  1. php-fpm 进程管理
  2. 不是python对文件的读操作方法的是-python的文件操作方法
  3. 卷积的C语言实现的MFC版本
  4. 王道计算机考研 数据结构 课后编程习题代码(绪论、线性表)
  5. JavaScript高级编程学习6——Date
  6. 《Linux内核分析》实践2
  7. python画图如何调整图例位置_Python-如何将图例排除在情节之外
  8. 一个简单的动态web服务器
  9. HoloLens 2开发:三种工程部署方式
  10. 您未被授权查看该页 您不具备使用所提供的凭据查看该目录或页的权限 HTTP 错误 401.1 - 未经授权:访问由于凭据无效被拒绝。...
  11. vba 定义类_类接口的实现及应用
  12. Sallen-Key 低通滤波器设计过程
  13. word中如何单独修改某一页页眉
  14. python 操作excel 表格
  15. 关键词抽取——结巴分词
  16. 中水处理设备可提高水资源利用率说明
  17. 电脑大写,电脑大写键盘怎么打开
  18. LD3320语音识别模块开发
  19. Java基础系列(三十):局部内部类
  20. 【笔记】实战mpvue2.0多端小程序框架——原生小程序 API 调用与多端小程序发布

热门文章

  1. 为什么Kubernetes的存储如此艰难?
  2. 1、利用蓝牙定位及姿态识别实现一个智能篮球场套件(一)——用重写CC2541透传模块做成智能手环...
  3. 利用Powershell SSH-Session 工具管理 linux或网络设备
  4. get_date.sh
  5. UISegmentControl
  6. jquery笔记___返回值问题
  7. 如何区别一幅图像是否是黑白图像
  8. [Android动画] 帧动画-获取帧数( getNumberOfFrames)七
  9. 基于Mozilla Thunderbird的扩展开发(四)---修改Thunderbird源代码实现自动保存附件...
  10. C语言可以不用,但是不能不会!