首页 > 其他分享 >数据结构练习笔记——删除单链表中相同元素

数据结构练习笔记——删除单链表中相同元素

时间:2023-07-18 09:24:57浏览次数:40  
标签:单链 LNode int next LinkList 表中 数据结构

删除单链表中相同元素

【问题描述】单链表中存放了若干整数,请删除相同整数。
【输入形式】单链表
【输出形式】删除相同整数后的单链表
【样例输入】1 1 1 2 3
【样例输出】1 2 3
【样例说明】递增的形式输入数据,允许相同元素

#include <stdlib.h>
#include <iostream>
using namespace std;
struct LNode {
	int data;
	LNode *next;
};
typedef LNode *LinkList;
void createList(LinkList &h, int n) {
	h = new LNode;
	h->next = NULL;
	LNode *p, *r;
	r = h;
	for (int i = 1; i <= n; i++) {
		p = new LNode;
		cin>>p->data;
		r->next = p;
		r = p;
	}
	r->next = NULL;
}
void printList(LinkList h) {
	LNode *p=h->next;
	while(p) {
		cout<<p->data<<" ";
		p=p->next;
	}
	cout<<endl;
}
//---------------
void listDeleteRepeat(LinkList &h) {
	LinkList p=h->next;
	while(p->next) {
		if(p->data==p->next->data)
			p->next=p->next->next;
		else 
			p=p->next;
	}
}
//---------------
int main() {
	LinkList h;
	createList(h, 5);
	listDeleteRepeat(h);
	printList(h);
	return 0;
}

记录一些数据结构学习过程的习题代码,便于日后查看。如有错误,欢迎交流指正。

标签:单链,LNode,int,next,LinkList,表中,数据结构
From: https://www.cnblogs.com/zhuannnn/p/17561858.html

相关文章

  • 哈希数据结构
    参考链接:https://blog.csdn.net/CRMEB/article/details/1208206821.哈希表哈希表,即散列表(Hashtable),是根据keyvalue而直接进行访问的数据结构。也就是说,它通过把keyvalue映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。......
  • 数据结构
    数据结构中的基本概念  数据:任何能够输入到计算机中,能被程序处理的描述客观事物的符号  数据项:有独立含义的最小单位,也叫做数据域、域  数据元素:组成数据的、有一定意义的基本单位,也叫作节点、结点、顶点(一个数据元素是由若干项数据项组成)  数据结构:相互之间......
  • 7.17 数据结构
    线段树小白逛公园动态维护最大子段和,没啥好说的文文的摄影布置考虑清楚标记分讨合并算术天才⑨与等差数列维护区间最大最小,如果是等差数列,有了端点就可以知道整个序列了,再维护哈希值对比就可以了,突然发现我之前这个解法是乱搞,只有充分性没有必要性,只是题目没有卡正解:维护......
  • 数据结构小记
    线段树区间查询线段树可以维护具有结合律的信息。区间修改区间查询加上修改后应当满足的前提是我们可以维护一个封闭的集合\(\mathcal{S}\),使得任一操作\(o\in\mathcal{S}\),且\(\mathcal{S}\)对于复合封闭,即对任意\(u,v\in\mathcal{S}\),有\(u\circv\in\mathcal{S}\)......
  • python利用小列表中元素排序对整个大列表中的小列表进行排序
    一、了解sorted() 函数sorted()函数是Python内置的用于排序可迭代对象的函数,它可以接受多个参数来进行灵活的排序操作。下面是对sorted()函数的参数要求和使用方法的详细说明:参数列表:iterable(必需):表示要进行排序的可迭代对象,例如列表、元组、集合等。key(可选):指定一个函数......
  • 二. 基础数据结构
    二.基础数据结构0.引JSON是一个有着特殊结构的数据,为了解析JSON,需要使用编程语言将JSON的数据格式进行抽象,有助于更好地,快捷地实现JSON数据的解析.为了使解析JSON结构的性能更好,选用C语言实现JSON的数据结构的抽象,以及底层的结构的解析功能实现.1.JSON基础数......
  • 用java写一个逆置单链表
    用Java写一个逆置单链表单链表是一种常见的数据结构,它由一系列节点组成,每个节点包含一个数据元素和一个指向下一个节点的引用。逆置单链表是指将原来的单链表中的节点顺序颠倒过来。在这篇文章中,我们将使用Java来实现逆置单链表的功能。我们将会介绍单链表的基本概念,并给出逆置单......
  • 用java创建一个单链表
    使用Java可以很方便地创建和操作数据结构,其中包括单链表。单链表是一种常见的线性数据结构,它由一系列节点组成,每个节点包含数据和指向下一个节点的指针。这种数据结构可以用于实现队列、栈、链表等等。在本文中,我们将学习如何使用Java创建一个单链表,并演示一些基本的操作。首先,我......
  • 数据结构练习笔记——创建有序单链表
    创建有序单链表【问题描述】为从键盘终端输入的m个整数创建带头结点的有序单链表存储结构,使输入的数据元素在单链表中按照元素值递增有序。【输入形式】第一行:单链表中元素个数m第二行:单链表中的m个整数【输出形式】按递增有序形式输出m个整数【样例输入】513245【......
  • C语言:数据结构之单链表(四)
    本篇谈一谈单链表的改,具体操作就是找到他,然后修改元素即可,上一篇有相关代码,可以参考。改函数代码如下:voidCorrect(LinkListheader,intsite_,charletter_){LinkListq=Search_Site(header,site_);q->letter=letter_;}main函数如下:(修改第6,......