插入数据结构线性表单链表的查找、插入、删除

怎样删除360  时间:2021-02-14  阅读:()

实验报告课程名称 数据结构

姓名

学号

专业班级指导教师

目录

第二章线性表的查找、插入、删除. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1 .1顺序表的查找. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1 .2顺序表的插入. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

1 .3顺序表的删除. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

单链表的建立、插入、删除. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

2.1单链表的建立尾插法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

2.2单链表的插入. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13

2.3单链表的删除. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17

第三章栈. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24

3.1链栈. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24

3.2顺序栈. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28

3.3队列. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30

3.4杨辉三角. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35

第四章串. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . .23

4.1字符串的建立. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23

4.2顺序串的插入. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25

1 .线性表的查找、插入、删除

1 .1顺序表的查找

程序

#include<stdio.h>

#include<stdl ib.h>

#include<mal loc.h>

#define OK 1

#define ERROR 0

#define TRUE 1

#define FALSE 0

#define ElemType int

#define MAXSIZE 100/*此处的宏定义常量表示线性表可能达到的最大长度*/typedef struct

{

ElemType elem[MAXSIZE]; /*线性表占用的数组空间*/int last; /*记录线性表中最后一个元素在数组elem[]中的位置(下标值)空表为-1*/

}Seq{l ist;int Locate(Seql ist L,ElemType e)

/*在顺序表L中查找与e相等的元素若L。 elem[i]=e,贝U找到该元素并返回i+1 若找不到则返回-1*/

{ int i=0; /*i为扫描计数器初值为0 即从第一个元素开始比较*/whi le

((i<=L. last)&&(L.elem[i]!=e))

/*顺序扫描表直到找到值为e的元素或扫描到表尾仍没找到*/ i++;if(i<=L. last)retu rn(i+1); /*若找到值为e的元素 贝返回其序号*/elseretu rn(-1); /*若没找到 贝返回空序号*/

}void main()

{

Seql ist l ;intp,q,r;int i ;printf("请输入线性标的长度:");scanf("%d",&r);l . last=r-1;printf("请输入线性表的各元素值 \n");for (i=0; i<=l . last; i++)

}printf("请输入要查找的元素值:\n");sea nf("%d",&q);p=Locate(l ,q);if(p==-1)printf("在此线性表中没有该元素!\n");elseprintf("该素在线性表中的位置为:%d\n",p);

执行结果:

错误分析:在编写过程中在编写主函数的时候有落下未编写的导致运行过程中不识别。

1 .2顺序表的插入

程序:

#include<stdio.h>#include<stdl ib.h>//#include<mal loc.h>

#define OK 1

#define ERROR 0

#define TRUE 1

#define FALSE 0

#define ElemType int

#define MAXSIZE 100typedef struct

{

ElemType elem[MAXSIZE];int last;

}SeqList;

//#include"common.h"

//#include"seql ist.h"int InsList(SeqList *L, int i ,ElemType e){

intk;if((i<1) | | (i>L->last+2))

{printf("插入位置i值不合法"); return(ERROR);}if(L->last>=MAXSIZE-1)

{printf("表已满无法插入"); return(ERROR);}for(k=L->last;k>=i-1;k--)

L->elem[k+1]=L->elem[k];

L->elem[i-1]=e;

L->last++;retu rn(OK);

}void main()

SeqList *l ;

{

intp,q,r;int i ; l=(SeqList*)mal loc(sizeof(SeqList));printf("请输入线性表的长度:");scanf("%d",&r);l->last=r-1;printf("请输入线性表的各元素值:\n");for(i=0; i<=l->last; i++)

{scanf("%d",&l->elem[i]);

}printf("请输入要插入的位置:\n");scanf("%d",&p);printf("请输入要插入的元素值:\n");scanf("%d",&q);

InsList(l ,p,q);for(i=0; i<=l->last; i++)

{printf("%d", l->elem[i]);

}

执行结果

}

数脉科技:阿里云香港CN2线路服务器;E3-1230v2/16G/240G SSD/10Mbps/3IP,月付374元

数脉科技怎么样?昨天看到数脉科技发布了7月优惠,如果你想购买香港服务器,可以看看他家的产品,性价比还是非常高的。数脉科技对香港自营机房的香港服务器进行超低价促销,可选择10M、30M的优质bgp网络。目前商家有优质BGP、CN2、阿里云线路,国内用户用来做站非常不错,目前E3/16GB阿里云CN2线路的套餐有一个立减400元的优惠,有需要的朋友可以看看。点击进入:数脉科技商家官方网站香港特价阿里云...

数脉科技8月促销,新客减400港币,BGP、CN2+BGP、阿里云线路低至350元

数脉科技(shuhost)8月促销:香港独立服务器,自营BGP、CN2+BGP、阿里云线路,新客立减400港币/月,老用户按照优惠码减免!香港服务器带宽可选10Mbps、30Mbps、50Mbps、100Mbps带宽,支持中文本Windows、Linux等系统。官方网站:https://www.shuhost.com* 更大带宽可在选购时选择同样享受优惠。* 目前仅提供HKBGP、阿里云产品,香港...

digital-vm:VPS低至$4/月,服务器$80/月,10Gbps超大带宽,不限流量,机房可选:日本新加坡美国英国西班牙荷兰挪威丹麦

digital-vm,这家注册在罗马尼亚的公司在国内应该有不少人比较熟悉了,主要提供VPS业务,最高10Gbps带宽,还不限制流量,而且还有日本、新加坡、美国洛杉矶、英国、西班牙、荷兰、挪威、丹麦这些可选数据中心。2020年,digital-vm新增了“独立服务器”业务,暂时只限“日本”、“新加坡”机房,最高也是支持10Gbps带宽... 官方网站:https://digital-vm.co...

怎样删除360为你推荐
google竞价排名哪些搜索引擎没有竞价排名?搜搜?谷歌?雅虎社区有什么网站的论坛内容丰富 资讯较新 适合年轻人的?怎么样免费装扮qq空间要怎么免费装扮QQ空间!eset最新用户名密码求ESET Smart Security最新用户名和密码百度抢票浏览器百度浏览器怎么抢票?吴晓波频道买粉罗辑思维,晓松奇谈,鸿观,吴晓波频道,财经郎眼哪个更有深度网站运营网络运营主管的主要工作职责是什么?童之磊湖北中文在线数字出版有限公司怎么样?godaddygodaddy域名怎样使用硬盘人移动硬盘的优缺点
查询域名 liquidweb 59.99美元 l5520 tightvnc 轻量 中国电信测速112 softbank邮箱 1元域名 网购分享 重庆电信服务器托管 免费稳定空间 宿迁服务器 phpinfo asp介绍 赵荣 装修瓦工招聘 ddos攻击 云主机 电脑主机 更多