本实验有关链表的基本操作,为下学期数据结构打基础

5825 查找指定结点的前驱,多组输入数据

#include <stdio.h>
#include <stdlib.h>
int count=0;
typedef struct node
{int data;struct node *next;
}LNode;
LNode *search(LNode *H,int x)
{LNode *p,*pre;p=H->next;pre=H;while(p!=NULL&&p->data!=x){pre=p;p=p->next;count++;}return pre;
}
int main()
{int n;int x;while(scanf("%d",&n)!=EOF){LNode *H;H=(LNode *)malloc(sizeof(LNode));H->next=NULL;int i;LNode *r;r=H;for(i=0;i<n;i++){LNode *s;s=(LNode *)malloc(sizeof(LNode));scanf("%d",&(s->data));s->next=r->next;r->next=s;r=s;}scanf("%d",&x);LNode *p;int *w;p=search(H,x);if(p->next==NULL){printf("x不存在");}else if(count==0){printf("没有前驱");}else{printf("%d",p->data);}}return 0;
}

5826 查找链表中有多少个值为偶数的结点

#include <stdio.h>
#include <stdlib.h>
int count=0;
typedef struct node
{int data;struct node *next;
}LNode;
void *search(LNode *H)
{LNode *p;p=H->next;while(p!=NULL){if((p->data%2)==0){count++;}p=p->next;}
}
int main()
{int n;while(scanf("%d",&n)!=EOF){LNode *H;H=(LNode *)malloc(sizeof(LNode));H->next=NULL;int i;for(i=0;i<n;i++){LNode *s;s=(LNode *)malloc(sizeof(LNode));scanf("%d",&(s->data));s->next=H->next;H->next=s;}search(H);printf("%d\n",count);count=0;}return 0;
}

5827 尾插法建立链表,之后删除其中所有值为x的结点(x有多个)

#include <stdio.h>
#include <stdlib.h>
int count=0;
typedef struct node
{int data;struct node *next;
}LNode;
void search(LNode *H,int x)
{LNode *p,*pre;p=H->next;pre=H;while(p!=NULL){if(p->data==x){pre->next=p->next;free(p);p=pre->next;}else{pre=p;p=p->next;}}
}
void output(LNode *H)
{LNode *p;p=H->next;while(p->next!=NULL){printf("%d  ",p->data);p=p->next;}printf("%d",p->data);
}
int main()
{int n;int x;while(scanf("%d",&n)!=EOF){LNode *H;H=(LNode *)malloc(sizeof(LNode));H->next=NULL;int i;LNode *r;r=H;for(i=0;i<n;i++){LNode *s;s=(LNode *)malloc(sizeof(LNode));scanf("%d",&(s->data));s->next=r->next;r->next=s;r=s;}scanf("%d",&x);search(H,x);output(H);printf("\n");}return 0;
}

5828 尾插法建立递增有序的链表,插入一个结点后仍然有序

#include <stdio.h>
#include <stdlib.h>
int count=0;
typedef struct node
{int data;struct node *next;
}LNode;
void yxinsert(LNode *H,int x)
{LNode *p,*pre;p=H->next;pre=H;while(p!=NULL&&p->data<x){pre=p;p=p->next;}LNode *s;s=(LNode *)malloc(sizeof(LNode));s->data=x;s->next=pre->next;pre->next=s;
}
void output(LNode *H)
{LNode *p;p=H->next;while(p->next!=NULL){printf("%d  ",p->data);p=p->next;}printf("%d",p->data);
}
int main()
{int n;int x;while(scanf("%d",&n)!=EOF){LNode *H;H=(LNode *)malloc(sizeof(LNode));H->next=NULL;int i;LNode *r;r=H;for(i=0;i<n;i++){LNode *s;s=(LNode *)malloc(sizeof(LNode));scanf("%d",&(s->data));s->next=r->next;r->next=s;r=s;}scanf("%d",&x);yxinsert(H,x);output(H);printf("\n");}return 0;
}

5829 建立有序链表(利用上一问的有序插入函数,一个一个插入建立有序链表)

#include <stdio.h>
#include <stdlib.h>
int count=0;
typedef struct node
{int data;struct node *next;
}LNode;
void yxinsert(LNode *H,int x)
{LNode *p,*pre;p=H->next;pre=H;while(p!=NULL&&p->data<x){pre=p;p=p->next;}LNode *s;s=(LNode *)malloc(sizeof(LNode));s->data=x;s->next=pre->next;pre->next=s;
}
void output(LNode *H)
{LNode *p;p=H->next;while(p->next!=NULL){printf("%d  ",p->data);p=p->next;}printf("%d",p->data);
}
void create(LNode *H,int n)
{int i;int in=0;for(i=0;i<n;i++){scanf("%d",&in);yxinsert(H,in);}
}
int main()
{int n;int x;while(scanf("%d",&n)!=EOF){LNode *H;H=(LNode *)malloc(sizeof(LNode));H->next=NULL;create(H,n);output(H);printf("\n");}return 0;
}

Nefu 锐格实验9相关推荐

  1. 龙贝格数值分析作业c语言,数值分析龙贝格实验报告.doc

    数值分析龙贝格实验报告 实验三 龙贝格方法 [实验类型] 验证性 [实验学时] 2学时 [实验内容] 1.理解龙贝格方法的基本思路 2.用龙贝格方法设计算法,编程求解一个数值积分的问题. [实验前的预 ...

  2. 东北林业大学锐格系统大一(指针与函数)

    感觉自己最近都要写博客,看C语言了,因为快考试了,最近压力好大啊!!!! 话不多说,指针与函数,开始吧!!! [5880](https://222-27-166-246.webvpn.nefu.edu ...

  3. 科大奥锐密立根油滴实验数据_请问科大奥锐的实验满分都是100吗?

    单摆法测量重力加速度 100 钢丝杨氏模量的测定 60 光电效应和普朗克常量的测定 60 迈克耳孙干涉仪 180 密立根油滴实验 100 偏振光的观察与研究 100 声速的测量 100 示波器实验 1 ...

  4. 林大锐格-算法-6121

    //这道题的问题表述应该略有些问题,不管是我自己写的代码,还是在网上找的都输出不对,在多次尝试后,将最终的输出由n-s改为s后通过. #include<stdio.h> #include& ...

  5. NEFU java课程实验一 程序控制语句实验

    目录 7193. 7196. 7197. 7195. 1464. 7194. 7186. 做的有点急,有错误或者更简单的方法大家可以告诉我,谢谢! 7193. import java.sql.SQLO ...

  6. 自组式直流电桥测电阻(科大奥锐仿真实验)

    计算简单代码 include <bits/stdc++.h> using namespace std;int main() {//double S;double R0, RR0;doubl ...

  7. 东北林业大学锐格测试题(图)

    图 1.键盘输入数据,建立一个有向图的邻接表. 2.在有向图的邻接表的基础上计算各顶点的度,并输出. 3.以有向图的邻接表为基础实现输出它的拓扑排序序列. 4.采用邻接表存储实现无向图的深度优先遍历. ...

  8. AI驱动制药的一种典范模式

    人工智能(AI)近年来强势进军新药研发领域,持续为行业注入新的活力.新药研发成功率低.成本持续走高,人们对新技术.新方法的热切需求以及资本的热烈吹生了一大批明星AI制药公司.在国外,以Schrodin ...

  9. 鹰谷靶点 | FDA批准首个乳腺癌CDK4/6抗耐药分子进入临床

    在全球范围内,乳腺癌是最常见的癌症之一,并且是女性因癌症死亡的主要原因.在中国,乳腺癌在实体瘤类型中排名第四,每年新增病例超过40万[1].HER2-.HR+乳腺癌是最常见的乳腺癌类型. 在乳腺癌中, ...

  10. 2019最新计算机毕业设计-题目汇总大全-系列1

    课设题目 备注 基于NLP,ASR及TTS技术的智能语音分析工具-负责语义分析部分(论文替代)   基于SpringBoot的用户音乐平台   家装设计公司客户关系系统   基于机器学习的文本语义分析 ...

最新文章

  1. 机器学习中你不可不知的几个算法常识
  2. 寻找兄弟单词(2012.5.6百度实习)
  3. python批量处理csv_Python批量处理csv并保存过程代码解析
  4. [转]Windows的批处理脚本
  5. Java8新特性之stream的详细用法
  6. java中的操作符(位操作符>>与>>>的区别)
  7. RequestBody获取前端数据_360视频云Web前端HEVC播放器实践剖析
  8. MinerConfig.java 爬取配置类
  9. Windows Vista SP1 Test Drive发布,在浏览器中即可体验
  10. 一条SQL引发的“血案”:与SQL优化相关的4个案例
  11. 在xml中自定义属性 app
  12. 5 加盐_软化水设备怎么加盐
  13. vue 父组件获取接口值传到子组件_vue 项目中 “父组件” 异步获取数据之后,传递给子组件不显示...
  14. 手动创建maven项目+cmd+webapp+tomcat
  15. android热加载随记
  16. android 仿QQ列表可折叠+自定义Dialog结合的DEMO
  17. 闪耀在 UNIX 传奇往事中的启示, UNXI 见证者带你一览究竟
  18. 平衡搜索树中的左单旋右单旋双旋
  19. 主机能ping通Ubuntu,Ubuntu无法ping通主机
  20. 自定义Behavior的艺术探索-仿UC浏览器主页

热门文章

  1. Google SketchUp,一款很有趣的软件,可以创建你所想要的任何3D模型
  2. 在html中怎样加圆点,css伪类-小圆点
  3. python 去掉标点、数字、特殊符号_python中怎么去掉标点符号
  4. outlook安全电子邮件实现
  5. java 黑盒测试_关于黑盒测试的总结
  6. 蓝桥杯算法提高 盾神与条状项链
  7. 槑图秀秀 (初学JAVA第三篇)
  8. 元气骑士怎么用电脑玩 元气骑士手游模拟器教程
  9. 家庭作业(贪心 + 并查集)
  10. js判断浏览器是pc端还是手机端