1447: PIPI的线性表问题Ⅰ

题目描述

已知线性表中的元素以递增序列排列,并以单链表作存储结构。设计算法删除表中所有值相同的多余元素(使得操作后的线性表中所有的值均不相同),同时释放被删结点空间,并分析算法的时间复杂度。

输入

第一行输入一个正整数n,表示元素个数,n<=100。
第二行输入n个正整数元素,保证元素以递增排列,元素的值<=100。

输出

输出删除相同元素后的链表。

样例输入
5
1 1 3 4 4
样例输出
1 3 4

代码:

#include<bits/stdc++.h>
using namespace std;
typedef struct LNode{int data;struct LNode *next;LNode(int data):data(data),next(NULL){};
}LNode,*LinkList;LinkList CreateLinkList(int n){//创建单链表 LinkList L = (LNode *)malloc(sizeof(LNode));//创建头结点int val;LNode *p;//接收新结点 LNode *tail = L;//尾指针,指向链表的最后一个结点while(n--){scanf("%d",&val);p = (LNode *)malloc(sizeof(LNode));p->data = val;tail->next = p;tail = tail->next;p=p->next;}tail->next=NULL;return L;
}
/*LinkList CreateLinkList(int n){LinkList L = new LNode(-1);//创建头结点LNode *tail=L;int val;while(n--){//	int val;scanf("%d",&val);LNode *p = new LNode(val);tail->next = p;tail = tail->next;} tail->next = NULL;return L;
} */
LinkList Delete_Duplicate(LinkList L,int &len){if(L->next==NULL)return NULL;///如果输入结点为空 LNode *pre = L;//定义一个指针指向头结点的下一个结点LNode *p = L->next;while(p!=NULL){if(pre->data == p->data){pre->next =p->next;free(p);p=pre->next;len--;}else{pre = p;p=p->next;}}return L;}
int main(void){int n;scanf("%d",&n);int len = n;LinkList L = CreateLinkList(len);LNode *p=L->next;LinkList A = Delete_Duplicate(L->next,len);LNode *x = A->next;for(int i=0;i<len;++i){printf("%d ",A->data);A=A->next;}return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/85404.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

云计算介绍

1.1 SaaS SaaS 是 Software-as-a-Service&#xff08;软件即服务&#xff09;1.2 PaaS PaaS 是 Platform-as-a-Service 的缩写&#xff0c;意思是平台即服务。 把服务器平台作为一种服务提供的 商业模式。通过网络进行程序提供的服务称之为 SaaS(Software as a Serv…

2023年海南省职业院校技能大赛(高职组)“软件测试”赛项竞赛规程

2023年海南省职业院校技能大赛&#xff08;高职组&#xff09; “软件测试”赛项竞赛规程 一、赛项名称 赛项名称&#xff1a;软件测试 英文名称&#xff1a;Software Testing 赛项组别&#xff1a;高职组 赛项归属产业&#xff1a;电子信息大类 二、竞赛目标 &#xf…

MySQL详细案例 1:MySQL主从复制与读写分离

文章目录 1. MySQL主从复制1.1 使用场景1.2 MySQL的复制类型1.3 主从复制的作用1.4 主从复制的工作过程1.5 实现MySQL主从复制1.5.1 前置准备1.5.2 主服务器mysql配置1.5.3 从服务器1 mysql配置1.5.4 从服务器2 mysql配置1.5.5 测试 1.6 主从复制的3种同步模式1.6.1 异步复制&a…

微信小程序底部安全区域高度获取

CSS 属性 safe-area-inset-bottom safe-area-inset-bottom 就是安全区的高度 padding-bottom:env(safe-area-inset-bottom); wx.getSystemInfoSync() wx.getSystemInfoSync()可以获取系统信息 let system wx.getSystemInfoSync() let bottomSafe system.screenHeight -…

一招解除csdn复制限制

先看这个代码 python读取英文pdf翻译成中文pdf文件导出代码 想要复制代码&#xff0c;csdn有限制怎么办&#xff08;csdn流氓&#xff0c;无耻&#xff09; 解除方法 ctrlu 看效果

Linux启动过程详解 Xmind导图笔记

参考大佬博客&#xff1a; 简要描述linux系统从开机到登陆界面的启动过程 Linux启动过程详解 Bootloader详解 来源&#xff1a;从BIOS开始画图了解Linux启动过程——老杨Linux

OpenCV自学笔记二十六:人脸检测

目录 一、人脸检测 二、LBPH人脸识别 三、EigenFaces人脸识别 四、Fisherfaces人脸识别 一、人脸检测 在OpenCV中&#xff0c;人脸检测是一个常见的计算机视觉任务&#xff0c;可以通过Haar级联分类器来实现。Haar级联分类器是一种基于机器学习的目标检测方法&#xff0c;…

TSINGSEE视频AI智能分析技术:水泥厂安全生产智能监管解决方案

一、方案背景 随着人工智能技术的快速发展以及视频监控系统在全国范围内的迅速推进&#xff0c;基于AI视频智能分析技术的智能视频监控与智慧监管系统&#xff0c;也已经成为当前行业的发展趋势。在工业制造与工业生产领域&#xff0c;工厂对设备的巡检管理、维护维修、资产管…

【全志V3s】SPI NAND Flash 驱动开发

文章目录 一、硬件介绍V3s的启动顺序 二、驱动支持U-Boot驱动主线 Linux 驱动已经支持 三、烧录工具 xfel四、构建U-Boot&#xff08;官方的Uboot&#xff09;先编译一下开始spi nand flash 代码层面的适配修改menuconfig配置ARM architecture配置Support for SPI Nand Flash o…

前端大批量并发请求的处理

<!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <title>测试大批量并发异步请求</title> </…

关于线程池

线程池是一种多线程处理方式&#xff0c;通过将任务添加到队列中&#xff0c;在创建线程后自动启动这些任务。线程池中的线程可以复用&#xff0c;可以控制最大并发数&#xff0c;并且方便管理&#xff0c;也就是说&#xff0c;线程池会提前创建好一些线程&#xff0c;当后续需…

rabbitMQ (1)

文章目录 1. RabbitMQ 介绍1.1 几个重要概念1.2 RabbitMq 的工作原理 2 RabbitMQ 安装3. RabbitMQ 入门操作3.1 添加依赖3.2 生产者代码3.3 消费者代码 4. Work Queues5. 管理端页面创建队列 1. RabbitMQ 介绍 引用 &#xff1a; RabbitMQ 是一个消息中间件&#xff1a;它接受…

Xilinx FPGA 程序固化重新上电程序不运行的问题

问题描述 FPGA直接下载bit文件,功能正常。 FPGA擦除FLASH,烧写FLASH,正常。 电源断电,重新上电,FALSH里面的程序没有启动,FPGA程序没有跑起来。–FLASH启动不正常。 解决办法 在XDC约束文件里边增加约束: ## Configuration options, can be used for all designs se…

JsonPath详解

JsonPath 简介 JsonPath是一种信息抽取类库&#xff0c;是从JSON文档中抽取指定信息的工具文档 http://goessner.net/articles/JsonPath 安装 pip install jsonpath 使用 注意&#xff1a;这里的json_data为python数据&#xff0c;如列表&#xff0c;字典 data jsonpath.…

[Linux入门]---Linux项目自动化构建工具-make/Makefile

目录 1.背景2.make指令输入make默认为Makefile文件第一条指令执行Makefile文件对gcc指令特殊处理及原理特殊符号 3.总结 1.背景 会不会写makefile&#xff0c;从一个侧面说明了一个人是否具备完成大型工程的能力一个工程中的源文件不计数&#xff0c;其按类型、功能、模块分别放…

CNN(九):Inception v3算法实战

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客 &#x1f356; 原作者&#xff1a;K同学啊|接辅导、项目定制 1 理论基础 Inception v3论文 Inception v3由谷歌研究员Christian Szegedy等人在2015年的论文《Rethinking the Inception Architecture f…

Jmeter集成到jenkins

Jmeter集成到Jenkins Jmeter集成到Jenkins. 1 软件下载... 4 一:环境配置... 4 1.JDK安装&#xff1a;... 4 配置JDK环境变量... 5 2.Jmeter安装&#xff1a;... 5 配置jmeter环境变量... 6 3.安装Ant 7 配置Ant环境变量... 7 4.Git安装&#xff1a;... 8 配置git环境…

C++笔试

数据大小 #define ll long long int 最大值&#xff1a;21,4748,3647 int 最小值&#xff1a;-2147483648 float 最大值&#xff1a;3.40282e38 float 最小值&#xff1a;1.17549e-38 double 最大值&#xff1a;1.79769e308 double 最小值&#xff1a;2.22507e-308 long 最…

Untiy UDP局域网 异步发送图片

同步画面有问题&#xff0c;传图片吧 using System.Text; using System.Net.Sockets; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; using System.Net; using System; using System.Threading.Tasks; using Sy…

java内嵌浏览器CEF-JAVA、jcef、java chrome

java内嵌浏览器CEF-JAVA、jcef、java chrome jcef是老牌cef的chrome内嵌方案&#xff0c;可以进行java-chrome-h5-桌面开发&#xff0c;下面为最新版本&#xff08;2023年9月22日10:33:07&#xff09; JCEF&#xff08;Java Chromium Embedded Framework&#xff09;是一个基于…