芜湖,紧接上文,咱们讲了插入操作,那么肯定得有删除操作啦,这不就来了?

老规矩,咱们康康题。

欧克,咱们先审题,这题让我们删除第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相关推荐

  1. 西南科技大学 SWUSTOJ #956

    大家好啊,我又来啦,这期和我一起来的还有咱们的来自西南科技大学OJ956题的约瑟夫哟,老规矩,看题咯. 咱们先审题,哦,是要求我们不停的在1-10中循环,一到k这个数就将其删除,再次循环,直到最后一个 ...

  2. 西南科技大学 SWUSTOJ #954

    来了您嘞,这位公子风度翩翩,相貌不凡呀,定有大智慧,且随我来浅看这道题. 咳咳,言归正传,咱们来看这道题,要求将两个链表链接在一起,大家如果看了前几篇博客这道题对大家来说绝对非常轻松. 当然如果你没有 ...

  3. 智能车竞赛技术报告 | 智能车视觉 - 西南科技大学 - 西科二队

    简 介: 本车以恩智浦公司的 32 位单片机MI.MXRT1064DV高内核处理速度核心控制器,可提供卓越的CPU性能和最佳实时响应.以MT9V034摄像头为核心传感器,通过摄像头采集道路图像信息送入 ...

  4. 第十六届全国大学生智能车竞赛线上比赛(广东+西南科技大学)成绩排名与获奖信息

    §01 成绩与奖项   下面是第十六届全国大学生智能车竞赛线上比赛成绩与奖项设置.线上比赛的队伍包括有 广东省参赛队 与 西南科技大学 .   线上比赛奖项设置比例如下: 一等奖:参赛队伍20% 二等 ...

  5. 西南科技大学智能车竞赛 线上比赛

    简 介: 西南科技大学队伍在8月1日上午进行了智能车竞赛线上比赛.本文给出了比赛的主要结果和过程描述. 关键词: 智能车竞赛,西南科技大学,线上比赛 §01 线上比赛 一.背景介绍   由于受到疫情影 ...

  6. 西南科技大学 计算机组成原理2011-2012,西南科技大学计算机组成原理2010-2011试卷A卷参考答案(2011)...

    西南科技大学2010-2011-1学期 <计算机组成原理>本科期末考试试卷(A卷) 参考答案及评分细则 一.名词解释:(每小题5分,共20分) 1.总线 一组可由多个部件分时共享的信息传输 ...

  7. 西南科技计算机在线自测,西南科技大学2017春季第一学期高等数学1在线自测答案...

    技校网专门为您推荐的类似问题答案 问题1: 西南科技大学 西南科技大学 厦门大学 上海海事大学的法硕实力 四川建材学校-1978年四川建材学院-1993年西南工学院 遂宁农业中专-绵阳经济高专 200 ...

  8. 专科计算机应用计算机网络,西南科技大学自考计算机应用及计算机网络(专科).doc...

    PAGE PAGE 1 西南科技大学自考计算机应用及计算机网络(专科) 数据库实验指导书 一.实验要求:本次实验可从下面的三个题目中任选一个来做. 二.本实验的环境配置要求: 硬件配置:586以上PC ...

  9. 西南科技大学研究生计算机,我们毕业啦……西南科技大学2020研究生毕业记!...

    "各位旅客,列车前方到站是终点站,毕业.要下车的乘客,请带好您的行李和贵重物品,准备下车." 每当毕业季来临时, 时间的流逝似乎开了倍速, 掠过青春的云海, 不因剧情的精彩而暂停. ...

最新文章

  1. 修改unity变量名但不丢失序列化值
  2. Filter在Vue,JS,JQ中的使用
  3. 如何求解两个数的最大公约数
  4. 《Leetcode | 02》
  5. Hive创建外部表以及分区
  6. Java 1.2.4 文件输入输出时——文件的位置
  7. 剑指offer——10.斐波那契数列
  8. Mac OS X上安装 Ruby运行环境
  9. Atitit.编程语言的基础句型and汉语英文比较
  10. 数据库SQL调优的几种方式
  11. Web攻击手段-CSRF攻击及防御策略
  12. 计算机博弈 期望搜索算法算法 期望极大极小算法
  13. noob的python学习之路
  14. 【Android】RecycleView简单仿漫画APP图片相关样式
  15. 社交口才:处理好人际关系的七种谈话技巧
  16. 二分图/二部图(bipartite graph)
  17. IDEA 全局搜索快捷键CTRL+SHIFT+F,不起作用
  18. 车载测试-HIL硬件在环测试
  19. html5 plus 支付,h5+ app 第三方支付调用步骤
  20. FPGA学习笔记——计数器

热门文章

  1. 《象google一样开会》读书笔记
  2. Tf铁蛋白颗粒包载顺铂/奥沙利铂/阿霉素/甲氨蝶呤MTX/紫杉醇PTX等药物
  3. golang函数式编程之柯里化
  4. Cocos2d-x数据模块教程04:plist文件操作
  5. 物联网运维-前端设备运维管理设计及解决方案
  6. Eclipse 安装反编译插件jadclipse
  7. Github 星标 8K+ 这款国人开源的 Redis 可视化管理工具
  8. 宇宙无敌加法器 python
  9. 大学计算机模拟系统word第四套,完整word版数学建模第四套
  10. P6入门:P6 Professional常用快捷键/热键