西南科技大学 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和指针>中讲解链表的知识,记录最终写一个在单链表中插入一个新节点的函数的过程,这个分析过程十分的有趣,准备了两篇博文,用于记录这个过程. 链表是以结构体和指针为基础的,所以结构体和 ...
最新文章
- 小于60的数中能被1到10整除的数量
- 7旗舰版装不了itunes_装系统,用小白,让小白来教大家如何用U盘装WIN7系统
- Kafka设计解析(五): Kafka Consumer设计解析
- java new的是构造函数_Java构造函数
- cf1207解题报告
- Mybatis源码分析之(一)搭建一个mybatis框架(写一个mybatis的Demo)
- Linux虚拟机下使用USB转串口线——配置minicom、以及screen的使用
- php读取大文件详解【OK】
- 2020收官--Filter4Go
- Django template 过滤器
- Atitit 常用加密算法 aes des rsa 比较 历史演进 目录 1.1. 常规加密算法如下 Aes 3des des rsa	1 2. 加密算法历史演进 按照出现时间和加密强度 流行
- 美年健康俞熔:创业者最重要的是锻造内心、熬过拐点 | 凌云时刻
- wordpress如何获得当前用户的头像
- 简书 echarts mysql_echarts入门教程
- 微星B550M迫击炮,设备管理器 声卡不显示Realtek解决办法
- 一个典型的高精度室内UWB定位系统是怎么炼成的?
- mysql时间相减得到天数保留两位_mysql两个日期计算天数
- 10大高权重博客_你知道几个?
- 【修理】电脑维修 显卡错误(错误代码:43)
- Visitor----------模式