- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构大纲答案2
实验编号:2 四川师大《数据结构》实验报告 2015年 12 月 25 日
计算机科学学院 2014 级 1 班 实验名称:线性表及其实现
姓名: 陈元玲 学号: 2014110105 指导老师: 刘芳 实验成绩:____ __
一、实验目的及要求
熟悉线性表的基本运算在两种存储结构(顺序结构和链式结构)上的实现,以线性表的各种操作(建立、插入、删除等)的实现为实验重点;
通过本次实验帮助学生加深对顺序表、链表的理解,并加以应用;
掌握循环链表和双链表的定义和构造方法
二、实验内容
编程实现线性表基本操作的实现创建、插入、删除和查找1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include 1.h
#include 2.h
#include 3.h
int main(){
SqList L;
InitList_Sq(L);
ElemType a;
int b,i;
cout请输入顺序表的元素个数:;
cina;
if(a=0){
cout请再次输入:;
cina;
}
if(aLIST_INIT_SIZE-1||a0){
cout分配失败endl;
exit(1);
}
for(i=0;i!=a;i++){
cout请输入第(i+1)元素:;
cinb;
L.elem[i]=b;
L.length++;
}
OutputList(L);
cout请输入要插入在顺序线性表L的第n个元素之前以及要插入的新的元素e的值:endl;
int n,e;
coutn=;
cinn;
coute=;
cine;
ListInsert_Sq(L,n,e);
OutputList(L);
int x;
cout请输入在顺序线性表L中删除第x个元素,并用e返回其值:endl;
coutx=;
cinx;
ListDelete_Sq(L,x,e);
OutputList(L);
//查找
cout输入要查找的元素a:;
cina;
if(!LocateElem_Sq(L,a))
cout没有此元素;
else
cout在顺序线性表L中查找第1个值与a相同的元素的位置在:LocateElem_Sq(L,a)endl;
return OK;
}
//1.h
#includestdio.h
#includeiostream.h
#includemalloc.h
#includeprocess.h
#define TRUE 1
#define FALSE 0
#define OK 1
#define ERROR 0
#define INFEASIBLE -1
#define OVERFLOW
typedef int ElemType;
typedef int Status;
//2.h
#define LIST_INIT_SIZE 100
#define LISTINCREMENT 10
typedef struct{
ElemType *elem;
int length;
int listsize;
}SqList;
//3.h
//创建空线性表
Status InitList_Sq(SqList L) { // 算法2.3
// 构造一个空的线性表L。
L.elem = (ElemType *)malloc(LIST_INIT_SIZE*sizeof(ElemType));
if (!L.elem) exit OVERFLOW; // 存储分配失败
L.length = 0; // 空表长度为0
L.listsize = LIST_INIT_SIZE; // 初始存储容量
return OK;
} // InitList_Sq
//显示输出
int OutputList(SqList L){
int i;
文档评论(0)