- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验二 线性表的建立及基本操作方法实现
【实验项目】:完成线性表的基本运算,从而了解线性表的基本特征,基本运算算法
【实验目的】:
理解和掌握线性表的类型定义方法。
掌握顺序表中的基本运算,包括顺序表的创建、元素的添加、删除,判空及判满等基本操作。
掌握链表中的基本运算,包括结点的定义,链表的创建等基本操作。
掌握利用尾插法建立单链表和显示单链表元素的算法。
掌握单链表的查找(按序号)算法。
掌握单链表的插入、删除算法。
【实验内容】:
编写一个程序ALGO2-1.CPP,实现顺序表的各种基本运算,并在此基础上设计一个主程序完成如下功能:
初始化顺序表L;
依次采用尾插法插入a,b,c,d,e
输出顺序表L;
输出顺序表L长度;
判断顺序表L是否为空;
判断顺序表L 的第3个元素;
输出元素‘a’的位置;
在第4个元素位置上插入‘f’元素;
输出顺序表L;
删除L的第3个元素;
输出顺序表L;
释放顺序表L;
编写一个程序ALGO2-2.CPP,实现单链表的各种基本运算,并在此基础上设计一个主程序完成如下功能:
初始化单链表H;
依次采用尾插法插入a,b,c,d,e元素;
输出单链表h;
输出单链表h的长度;
判断单链表h是否为空;
输出单链表h的第三个元素;
输出元素‘a’的位置;
在第4个元素位置上插入‘f’元素;
输出单链表h;
删除L的第3个元素;
输出单链表h;
释放单链表h;
(一)
程序:
#include stdio.h
#include malloc.h
#define MaxSize 50
typedef char ElemType;
typedef struct
{
ElemType elem[MaxSize];
int length;
} SqList;
extern void InitList(SqList *L);
extern void DestroyList(SqList *L);
extern int ListEmpty(SqList *L);
extern int ListLength(SqList *L);
extern void DispList(SqList *L);
extern int GetElem(SqList *L,int i,ElemType e);
extern int LocateElem(SqList *L, ElemType e);
extern int ListInsert(SqList *L,int i,ElemType e);
extern int ListDelete(SqList *L,int i,ElemType e);
void main()
{
SqList *L;
ElemType e;
printf((1)初始化顺序表L\n);
InitList(L);
printf((2)依次采用尾插法插入a,b,c,d,e元素\n);
ListInsert(L,1,a);
ListInsert(L,2,b);
ListInsert(L,3,c);
ListInsert(L,4,d);
ListInsert(L,5,e);
printf((3)输出顺序表L:);
DispList(L);
printf((4)顺序表L长度=%d\n,ListLength(L));
printf((5)顺序表L为%s\n,(ListEmpty(L)?空:非空));
GetElem(L,3,e);
printf((6)顺序表L的第3个元素=%c\n,e);
printf((7)元素a的位置=%d\n,LocateElem(L,a));
printf((8)在第4个元素位置上插入f元素\n);
ListInsert(L,4,f);
printf((9)输出顺序表L:);
DispList(L);
printf((10)删除L的第3个元素\n);
ListDelete(L,3,e);
printf((11)输出顺序表L:);
DispList(L);
printf((12)释放顺序表L\n);
DestroyList(L);
(二)
程序
#include stdio.h
#includemalloc.h
//#define maxsize 1024
typedef char ElemType;
typedef struct node
{
ElemType data;
struct node *next;
}LinkList;
//初始化线性表
void InitList (LinkList *h)
{
h=(LinkList *)malloc(sizeof(LinkList));
h-next=N
您可能关注的文档
最近下载
- 2022小学语文新课标测试题库及答案.pdf VIP
- 初中生积极心理品质培育策略与实践研究.docx VIP
- 投标服务承诺书(20篇).docx VIP
- 七年级英语第一次月考卷(考试版A4)【测试范围:沪教版五四学制2024 Starter~Unit 1】(上海专用).docx VIP
- 李白按年龄顺序写的诗.docx VIP
- 2025年四川省高考化学试卷真题(含答案解析).docx
- 高频精选:京东快递员ai面试题及答案.doc VIP
- 高频精选:京东快递员ai面试题及答案大全.doc VIP
- 吉林省中药软片炮制规范.pptx VIP
- 名著阅读《湘行散记》七年级语文上册部编版(共9页).docx VIP
文档评论(0)