西南科技大学 SWUSTOJ #953
芜湖,紧接上文,咱们讲了插入操作,那么肯定得有删除操作啦,这不就来了?
老规矩,咱们康康题。
欧克,咱们先审题,这题让我们删除第i个结点前面的结点,同样,咱们仍然有多个方法,数组,vector,还有正宗的方法----链表。
通过上文,我相信大家一定自己去琢磨了怎么用数组来实现删除,所以这里我就不再赘述了,直接讲链表了。
老规矩,要用链表首先就得创建一个链表,来吧,康康代码。
typedef struct node{int data;node *next;
}node;void creat(node *&L,int n,int a[]){...................../*创建单链表的方法和上文的方法是一致的,本人患有懒癌,所以你们就自己去看上文咯,一模一样的代码,哦对了,要用尾插法喔,我这里简单写下尾插法代码,相信你们能够理解。*/for( ; ; ) {while(p->next!=NULL){p=p->next;}//咱们这个while循环是为了找最后一个结点,找着了咱们就给它链上去。node *s;s=(node*)malloc(sizeof(node));s->data=a[i];s->next=NULL;p->next=s;//就是这样啦。}
}
欧克,是不是非常简单?好,接下来自定义删除函数(真恶心,要写好多,伤心(bushi
void delete(node *&L,int n){node *p;p=L;int sum=0;//老样子,表示结点id。while(sum<n-2&&p->next!=NULL){sum++;p=p->next;}//ok啊,到这里咱们是已经找到了需要删除的结点的前一位结点了,准备开始删除咯。node *s;//这里多建一个指针是为了方便释放被删除的结点空间。q=p->next;p->next = p->next->next;free(q);//删除结点空间
}
到这里咱们已经算是解决所有问题啦,最后咱们再将代码其他部分补全即可。
想要代码吗?(手动滑稽)
你给我点个赞我就给你
好啦,开玩笑的,我为人民服务。
#include <iostream>
using namespace std;
int a[1000];
typedef struct node{int data;struct node *next;
}list;
void creatlist(list *&L,int n){list *s,*p;L=(list*)malloc(sizeof(list));L->next=NULL;for(int i = 0 ; i < n; i ++){s=(list*)malloc(sizeof(list));list *p=L;while(p->next!=NULL){p=p->next;}p->next=s;s->next=NULL;s->data=a[i];}
}
void insert(list *&L,int n,int m){list *s,*p;int j=0;s=L;while(j<n-1&&s!=NULL){j++;s=s->next;}p=(list*)malloc(sizeof(list));p->data=m;p->next=s->next;s->next=p;
}
void print(list *&L){list *s=L->next;while(s!=NULL){cout << s->data << " ";s=s->next;}
}
void dlete(list *&L,int n){list *p=L;int j=0;while(j<n-2&&p->next!=NULL){j++;p=p->next;}list *q=p->next;p->next=p->next->next;free(q);
}
int main(){int t;cin >> t;for(int i = 0 ; i < t ; i ++ ) {cin >> a[i];}int n,m;cin >> n ;if(n>t||n<2){cout << "error!" ;}else{list *L;creatlist(L,t);dlete(L,n);print(L); }}
西南科技大学 SWUSTOJ #953相关推荐
- 西南科技大学 SWUSTOJ #956
大家好啊,我又来啦,这期和我一起来的还有咱们的来自西南科技大学OJ956题的约瑟夫哟,老规矩,看题咯. 咱们先审题,哦,是要求我们不停的在1-10中循环,一到k这个数就将其删除,再次循环,直到最后一个 ...
- 西南科技大学 SWUSTOJ #954
来了您嘞,这位公子风度翩翩,相貌不凡呀,定有大智慧,且随我来浅看这道题. 咳咳,言归正传,咱们来看这道题,要求将两个链表链接在一起,大家如果看了前几篇博客这道题对大家来说绝对非常轻松. 当然如果你没有 ...
- 智能车竞赛技术报告 | 智能车视觉 - 西南科技大学 - 西科二队
简 介: 本车以恩智浦公司的 32 位单片机MI.MXRT1064DV高内核处理速度核心控制器,可提供卓越的CPU性能和最佳实时响应.以MT9V034摄像头为核心传感器,通过摄像头采集道路图像信息送入 ...
- 第十六届全国大学生智能车竞赛线上比赛(广东+西南科技大学)成绩排名与获奖信息
§01 成绩与奖项 下面是第十六届全国大学生智能车竞赛线上比赛成绩与奖项设置.线上比赛的队伍包括有 广东省参赛队 与 西南科技大学 . 线上比赛奖项设置比例如下: 一等奖:参赛队伍20% 二等 ...
- 西南科技大学智能车竞赛 线上比赛
简 介: 西南科技大学队伍在8月1日上午进行了智能车竞赛线上比赛.本文给出了比赛的主要结果和过程描述. 关键词: 智能车竞赛,西南科技大学,线上比赛 §01 线上比赛 一.背景介绍 由于受到疫情影 ...
- 西南科技大学 计算机组成原理2011-2012,西南科技大学计算机组成原理2010-2011试卷A卷参考答案(2011)...
西南科技大学2010-2011-1学期 <计算机组成原理>本科期末考试试卷(A卷) 参考答案及评分细则 一.名词解释:(每小题5分,共20分) 1.总线 一组可由多个部件分时共享的信息传输 ...
- 西南科技计算机在线自测,西南科技大学2017春季第一学期高等数学1在线自测答案...
技校网专门为您推荐的类似问题答案 问题1: 西南科技大学 西南科技大学 厦门大学 上海海事大学的法硕实力 四川建材学校-1978年四川建材学院-1993年西南工学院 遂宁农业中专-绵阳经济高专 200 ...
- 专科计算机应用计算机网络,西南科技大学自考计算机应用及计算机网络(专科).doc...
PAGE PAGE 1 西南科技大学自考计算机应用及计算机网络(专科) 数据库实验指导书 一.实验要求:本次实验可从下面的三个题目中任选一个来做. 二.本实验的环境配置要求: 硬件配置:586以上PC ...
- 西南科技大学研究生计算机,我们毕业啦……西南科技大学2020研究生毕业记!...
"各位旅客,列车前方到站是终点站,毕业.要下车的乘客,请带好您的行李和贵重物品,准备下车." 每当毕业季来临时, 时间的流逝似乎开了倍速, 掠过青春的云海, 不因剧情的精彩而暂停. ...
最新文章
- 修改unity变量名但不丢失序列化值
- Filter在Vue,JS,JQ中的使用
- 如何求解两个数的最大公约数
- 《Leetcode | 02》
- Hive创建外部表以及分区
- Java 1.2.4 文件输入输出时——文件的位置
- 剑指offer——10.斐波那契数列
- Mac OS X上安装 Ruby运行环境
- Atitit.编程语言的基础句型and汉语英文比较
- 数据库SQL调优的几种方式
- Web攻击手段-CSRF攻击及防御策略
- 计算机博弈 期望搜索算法算法 期望极大极小算法
- noob的python学习之路
- 【Android】RecycleView简单仿漫画APP图片相关样式
- 社交口才:处理好人际关系的七种谈话技巧
- 二分图/二部图(bipartite graph)
- IDEA 全局搜索快捷键CTRL+SHIFT+F,不起作用
- 车载测试-HIL硬件在环测试
- html5 plus 支付,h5+ app 第三方支付调用步骤
- FPGA学习笔记——计数器