西南科技大学 swust oj #952: 单链表的插入操作的实现
题目描述
建立长度为n的单链表,在第i个结点之前插入数据元素data。
输入
第一行为自然数n,表示链式线性表的长度; 第二行为n个自然数表示链式线性表各元素值; 第三行为指定插入的位置i;第四行为待插入数据元素data。
输出
指定插入位置合法时候,输出插入元素后的链式线性表的所有元素,元素之间用一个空格隔开。输入不合法,输出"error!"。
样例输入
5 1 2 3 4 5 3 6
样例输出
1 2 6 3 4 5
#include<stdio.h>
#include<malloc.h>typedef struct SLink
{int data;int judge;struct SLink *next;
}slink;slink *createList()
{int n,temp;slink *L,*r,*s;scanf("%d",&n);L = (slink *)malloc(sizeof(slink));r = L;for(int i=0;i<n;i++){scanf("%d",&temp);s=(slink *)malloc(sizeof(slink));s->data = temp;r->next = s;r = s;}r->next = NULL;return L;
}int listLength(slink *L)
{int i=0;slink *p=L;while(p->next){i++;p = p->next;}return i;
}void Display(slink *L)
{slink *p;p = L->next;while(p->next!=NULL){printf("%d ",p->data);p = p->next;}printf("%d\n",p->data);
}slink *insertElem(slink *L,int site,int elem)
{int j = 0;slink *p,*s;p = L;if(site<1){L->judge = 0;return L;}while(j < site-1 && p!=NULL){j++;p = p->next;}if(p==NULL){L->judge = 0;return L;}else{s = (slink *)malloc(sizeof(slink));s->data = elem;s->next = p->next;p->next = s;L->judge = 1;return L;}
}int main()
{slink *L;int site,elem;L = createList();scanf("%d",&site);scanf("%d",&elem);L = insertElem(L,site,elem);if(L->judge){Display(L);}else{printf("error!");}return 0;
}
西南科技大学 swust oj #952: 单链表的插入操作的实现相关推荐
- SWUST OJ 953: 单链表的删除操作的实现
建立长度为n的单链表,删除第i个结点之前的结点. 第一行为自然数n,表示链式线表的长度: 第二行为n个自然数表示链式线性表各元素值: 第三行为指定的删除参数i. #include <stdio. ...
- 西南科技大学OJ题 单链表的删除操作的实现0953
单链表的删除操作的实现 1000(ms) 65535(kb) 2896 / 13622 建立长度为n的单链表,删除第i个结点之前的结点. 输入 第一行为自然数n,表示链式线性表的长度: 第二行为n个自 ...
- SWUST OJ 954单链表的链接
swust oj 954 题目描述 建立长度为n的单链表A和长度为m的单链表B.编程实现将B表链接在A表的尾端,形成一个单链表A.数据类型指定为字符型. 输入 输出 样例输入 样例输出 源代码 #in ...
- SWUST OJ#955 单链表上查找算法的实现
目录 题目 思路 代码 数据结构 STL 题目 题目描述 建立一个长度为n的带头结点的单链表,在该表中寻找第i个结点,若找到,则输出ok,否则输出error.处理数据类型为整型. 输入 第一行为链表的 ...
- 单链表的插入操作的实现(0952)SUWST-OJ
Description 建立长度为n的单链表,在第i个结点之前插入数据元素data. Input 第一行为自然数n,表示链式线性表的长度:第二行为n个自然数表示链式线性表各元素值:第三行为指定插入的位 ...
- 单链表的插入操作(全)
1 在指定位序插入数据 第一步 主要执行操作:查找 先查找所要插入位置的前一个元素 具体方法:根据链表的特点-每一个节点都需要一个数据域和指针域 所以只需从头节点遍历到所要插入数据的的前一个 ...
- 西南科技大学 swust OJ 943: 顺序表插入操作的实现
题目描述 建立长度为n的顺序表,在指定的数据元素item之前插入数据元素data.如果指定的数据元素item不存在,则将data插入到顺序表的尾端.(数据类型为整型) 输入 第一行为顺序表的长度n: ...
- 【 C 】在单链表中插入一个新节点的尝试(二)
在上篇博文中:[ C ]在单链表中插入一个新节点的尝试(一),我们最后提到了如果向单链表的开头(起始位置)插入一个节点,上篇博文中给出的程序显然完成不了这任务. 这篇博文中,我们将解决这个问题,给出一 ...
- 【 C 】在单链表中插入一个新节点的尝试(一)
根据<C和指针>中讲解链表的知识,记录最终写一个在单链表中插入一个新节点的函数的过程,这个分析过程十分的有趣,准备了两篇博文,用于记录这个过程. 链表是以结构体和指针为基础的,所以结构体和 ...
最新文章
- 【阿里云产品公测】高大上的搜索服务OpenSearch, 你值得拥有!
- 基于光学导航系统,矩阵变换和3D-2D配准研究
- cisco vPC技术
- rust(11)-函数作为返回值和match(类似于switch)
- 牛客网NC112--进制转换
- Java 两线程交替打印奇偶数(一)
- 真·抬头发票!| 今日最佳
- java 字段名重复,java – JSON响应中的重复字段
- Web前端面试指导(十四):如何居中一个元素(正常、绝对定位、浮动元素)?
- 模型保存的方法-----保存整个模型
- 电脑指定区域旋转_随州平板电脑无线管道潜望镜QV厂家_武汉天仪仪器
- [置顶] 话说你最拼命的时候怎样拼命的?
- appcan使用心得体会
- mfc 中文乱码转换为正常中文_中文编码转换
- Vivado安装使用【Verilog】
- 基于PyTorch的生成对抗网络入门(3)——利用PyTorch搭建生成对抗网络(GAN)生成彩色图像超详解
- 儿子于靖洋的百天照片
- 连接器E-mark认证要准备什么资料?
- el-transfer 用法
- Vue.js(渐进式JavaScript框架)
热门文章
- 即便是SQL Guy, 也无法逃离UML
- csgo调哪个会流畅_对于游戏卡顿掉帧说不,三步提高游戏流畅性,让你纵享丝滑画面...
- 手把手教你撸一个小程序带太阳码的海报分享
- python中ln怎么表示_Python基础篇(六)
- ajax文件上传data,ajax文件上传-FormData()
- 高通mm-camera_vendor
- Matlab常用函数集合(各类文件读取/保存、数据转换、处理)——持续更新中
- echarts天气预报
- Vue babel-polyfill 解决IE兼容问题
- Android开发-Fragment嵌套Fragment