数据结构--实验报告 线性表的基本操作

时间:2019-05-12 07:17:16下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《数据结构--实验报告 线性表的基本操作》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《数据结构--实验报告 线性表的基本操作》。

第一篇:数据结构--实验报告 线性表的基本操作

}(一)单链表的基本操作

#include using namespace std;#define true 1 #define false 0 #define ok 1 #define error 0 #define overflow-2 typedef int Status;typedef int ElemType;typedef struct LNode //存储结构 { ElemType data;struct LNode *next;}LNode,*LinkList;void CreateList(LinkList &L,int n)//尾插法创建单链表 { LinkList p;L=new LNode;L->next=NULL;//建立一个带头结点的单链表

LinkList q=L;//使q指向表尾

} Status GetElem(LinkList L,int i,ElemType &e)//取第i个元素 { LinkList p=L->next;int j=1;while(p&&jnext;++j;} for(int i=1;i<=n;i++){ p=new LNode;

cin>>p->data;p->next=NULL;q->next=p;q=p;} if(!p||j>i)return error;//第i个元素不存在

e=p->data;return ok;} Status LinkInsert(LinkList &L,int i,ElemType e)//插入 { LinkList p=L;int j=0;while(p&&jnext;++j;} //寻找第i-1个结点 if(!p||j>i-1)return error;//i小于1或者大于表长加1 LinkList s=new LNode;//生成新结点

s->data=e;s->next=p->next;//插入L中

p->next=s;return ok;}

Status ListDelete(LinkList &L,int i,ElemType &e)// 删除 { LinkList p=L;LinkList q;int j=0;while(p->next&&j

p=p->next;++j;} if(!(p->next)||j>i-1)return error;//删除位置不合理

q=p->next;p->next=q->next;//删除并释放结点

e=q->data;delete(q);return ok;

} void MergeList(LinkList &La,LinkList &Lb,LinkList &Lc){ //合并两个顺序链表

LinkList pa,pc,pb;pa=La->next;pb=Lb->next;Lc=pc=La;while(pa&&pb){ if(pa->data<=pb->data)

{ pc->next=pa;

pc=pa;pa=pa->next;} else

{ pc->next=pb;

pc=pb;

pb=pb->next;} } pc->next=pa?pa:pb;delete(Lb);} void show(LinkList L)//{ LinkList p;p=L->next;while(p){ cout<

data<<“-->”;p=p->next;} cout<next;while(p){ ++i;

显示 表长 3

p=p->next;} return i;} void xiugai(LinkList L)//修改 { int i,j=1;ElemType k;ElemType e,m;LinkList p=L->next;cout<<“请输入要修改的元素位置(0>i;GetElem(L,i,e);cout<<“该位置的元素:”<>k;while(p&&jnext;++j;} m=p->data;p->data=k;cout<<“修改后的单链表显示如下:”<>a;cout<<“请输入第一个有序链表的元素共(”<>b;cout<<“请输入第二个有序链表的元素共(”<>select;switch(select){ case 1:cout<<“请输入单链表的长度:”<

cin>>x;

cout<<“请输入”<

CreateList(list,x);break;case 2: cout<<“单链表显示如下:”<

show(list);break;case 3: int s;cout<<“单链表的长度为:”<>x;while(x<0||x>Length(list,s)){ cout<<“输入有误,请重新输入”<>x;} GetElem(list,x,y);cout<<“该位置的元素为:”<>x;while(x<0||x>Length(list,s)){ cout<<“输入有误,请重新输入”<>x;} cout<<“要插入的元素值:”;cin>>y;LinkInsert(list,x,y);cout<<“插入后单链表显示如下:”<>x;while(x<0||x>Length(list,s)){ cout<<“输入有误,请重新输入”<>x;} cout<<“要删除的元素值:”<

ListDelete(list,x,y);

} break;case 8: hebing();break;case 9: exit(0);break;default : cout<<“输入有误,请重新输入”<

四、测试结果 1)顺序表 的测试结果

8 2)单链表的测试结果

五、心得体会

当听到老师说写数据结构实验报告时,我有点惊讶,才学了不到一个月,就要写实验报告。记得去年学习C++时,学了一个学期,程序设计用了三周,才完成的,这个实验报告居然要一周完成两个设计,觉得很难。但是现在一周过去了,我也写完了,自我感觉良好。

通过这次写实验报告,我深切的理解了这门课的本质。刚开始学这门课时,当时还不清楚这门课程的目的,现在,我真正的理解了:数据结构像是身体的骨骼,而C++是填充这骨骼的肉体,二者相结合才能使整个程序更加完整,健全。数据结构是个框架,模型,抽象数据类型中列举了各种操作,而所用的C++语言,将各种操作描述出来构成算法。数据结构+算法=程序设计。

在这次设计的过程中,我还遇到了,很多的问题。顺序表是按顺序存储的,用了一维数组来存储,又结合C++的程序设计,我又用了类,但是,在执行时出现了问题。后来问同学,指出我的错误,不过获益不少。我又重新整理思路,把顺序表的基本操作写好了。虽然走了很多弯路,但是让我认识到,一定要创新,大胆,不能按照旧的思路去干新的事情。

单链表写起来简单多了,这个很快就搞定了。但是细节上出了问题。比如说,有些变量的重复定义,有些变量又没有定义,在调用函数,就直接复制过来,没有改参数……通过修改,我深刻理解到:细节决定成败,在以后,不管做任何事情都要认真,细心。

这次的实验报告,让我受益匪浅,不仅有知识方面的,还有生活和精神上的。总之,我会继续我的兴趣编程,相信在编程的过程中,能不断的提高自己。

第二篇:数据结构线性表实验报告

实验报告

课程名:数据结构

实验名:线性表及其操作 姓名: 班级: 学号:

撰写时间:2014.09.24

一 实验目的与要求

1.掌握线性表的实现

2.掌握线性表的基本操作的实现

二 实验内容

• 分别完成线性表的顺序表示及链式表示

• 在两种表示上, 分别实现一些线性表的操作, 至少应该包括 – 在第i个位置插入一个元素 – 删除第i个元素 – 返回线性表长

– 返回第i个元素的值

三 实验结果与分析

#include #include //---------线性表链式表示-----------struct V//声明一个结构体类型struct V { int value;struct V * next;//定义结构体变量 };void PrintLink(struct V*p)//定义一个结构体指针 { while(p!=NULL)//只要指针指向的变量不为NULL;就会一直循环链表指向下一个结构体

{

printf(“%d, ”,(*p).value);

p=(*p).next;//指针指向下一个结构体

} printf(“n”);} void Link(){

struct V*head;head=(struct V*)malloc(sizeof(struct V));//开辟一个长度为size的内存

(*head).value=-100;//表头为-100(*head).next=NULL;printf(“------------线性表链式表示------------n”);

int i,n=10;struct V*p=head;printf(“10个数据:n”);for(i=0;i

(*p).next=(struct V*)malloc(sizeof(struct V));

p=(*p).next;

(*p).value=2*i;

(*p).next=NULL;} PrintLink(head);//调用PrintLink函数

printf(“删除第四个数据:n”);int k=4;p=head;for(i=1;i

p=(*p).next;} struct V*temp=(*p).next;//k表示插入和删除的位置

(*p).next=(*temp).next;free(temp);PrintLink(head);printf(“插入第十个数据:n”);

k=10;p=head;for(i=1;i

p=(*p).next;} temp=(*p).next;(*p).next=(struct V*)malloc(sizeof(struct V));(*(*p).next).value=-99;(*(*p).next).next=temp;PrintLink(head);}

//---------线性表顺序表示-----------void seq1(){ int i,n=10,k=4;int a[10];//---------输出数组元素------------printf(“-------------线性表顺序表示---------n”);for(i=0;i

a[i]=i;} printf(“数组元素为:n”);for(i=0;i

printf(“%3d”,a[i]);} printf(“n”);//--------插入一个数组元素---------int m=n+1,j=12;//插入元素12 int b[20];for(i=0;i

if(i

{

b[i]=a[i];

}

else if(i==k)

{b[i]=j;}

else

{b[i]=a[i-1];} } printf(“输出插入一个元素的数组:n”);for(i=0;i

{

if(i

{c[i]=a[i];}

else

{c[i]=a[i+1];} } printf(“输出删除一个元素的数组:n”);for(i=0;i

printf(“数组元素为:n”);for(i=1;i<=a[0];i++){a[i]=i;} for(i=0;i<2*a[0];i++){printf(“%d,”,a[i]);} printf(“n”);//-----在k位置插入一个元素------------for(i=a[0];i>=k;i--){a[i+1]=a[i];} a[k]=-100;++a[0];for(i=0;i<2*a[0];i++){printf(“%d,”,a[i]);} printf(“n”);//-------在k---------------for(i=0;i>k;i++){a[i]=a[i+1];} a[k]=-1;a[0]=n;--a[0];for(i=0;i<2*a[0];i++){printf(“%d,”,a[i]);} printf(“n”);

} int main(int argc,char *argv[]){ seq1();seq2();Link();return 0;}

图1:实验结果截图

实验分析:已在程序中按规定格式标注。

第三篇:福州大学数据结构实验报告-线性表

数据结构原理实验报告

学号:

姓名:

线性表

一、问题描述 1.实现ADT表

2.设表的Reverse运算将表中元素的次序反转。扩充用数组实现表的结构List,增加函数Reverse(L),将表L中元素的次序反转,并要求就地实现Reverse运算。

二、算法描述

从i=0开始,将表中第N个元素与N-i-1个元素调换即可

三、核心代码

void ReverseList(List L){

ListItem tmp;int i;for(i=0;in/2;i++){

} tmp = L->table[i];L->table[i] = L->table[L->n-1-i];L->table[L->n-1-i] = tmp;}

四、运行结果

第四篇:《数据结构》 实验报告(附实例) ---实验一 线性表的基本操作实现

实验 一 线性表的基本操作实现及其应用

一、实验目的

1、熟练掌握线性表的基本操作在两种存储结构上的实现,其中以熟悉各种链表的操作为重点。

2、巩固高级语言程序设计方法与技术,会用线性链表解决简单的实际问题。

二、实验内容

1、单链表的表示与操作实现(*)

2、约瑟夫环问题

3、Dr.Kong的艺术品

三、实验要求

1、按照数据结构实验任务书,提前做好实验预习与准备工作。

2、加“*”题目必做,其他题目任选;多选者并且保质保量完成适当加分。

3、严格按照数据结构实验报告模板和规范,及时完成实验报告。

四、实验步骤

(说明:依据实验内容分别说明实验程序中用到的数据类型的定义、主程序的流程以及每个操作(成员函数)的伪码算法、函数实现、程序编码、调试与分析、总结、附流程图与主要代码)

㈠、数据结构与核心算法的设计描述

(程序中每个模块或函数应加注释,说明函数功能、入口及出口参数)

1、单链表的结点类型定义

/* 定义DataType为int类型 */ typedef int DataType;

/* 单链表的结点类型 */ typedef struct LNode { DataType data;struct LNode *next;}LNode,*LinkedList;

2、初始化单链表

LinkedList LinkedListInit(){ // 每个模块或函数应加注释,说明函数功能、入口及出口参数 }

3、清空单链表

void LinkedListClear(LinkedList L){// 每个模块或函数应加注释,说明函数功能、入口及出口参数}

4、检查单链表是否为空

int LinkedListEmpty(LinkedList L){ ….}

5、遍历单链表 void LinkedListTraverse(LinkedList L){ ….}

6、求单链表的长度

int LinkedListLength(LinkedList L){ ….}

7、从单链表表中查找元素

LinkedList LinkedListGet(LinkedList L,int i){ //L是带头结点的链表的头指针,返回第 i 个元素 }

8、从单链表表中查找与给定元素值相同的元素在链表中的位置

LinkedList LinkedListLocate(LinkedList L, DataType x){ …… }

9、向单链表中插入元素

void LinkedListInsert(LinkedList L,int i,DataType x){ // L 为带头结点的单链表的头指针,本算法 // 在链表中第i 个结点之前插入新的元素 x }

10、从单链表中删除元素

void LinkedListDel(LinkedList L,DataType x){ // 删除以 L 为头指针的单链表中第 i 个结点 }

11、用尾插法建立单链表

LinkedList LinkedListCreat(){ …… } ㈡、函数调用及主函数设计

(可用函数的调用关系图说明)㈢ 程序调试及运行结果分析 ㈣ 实验总结

五、主要算法流程图及程序清单

1、主要算法流程图:

2、程序清单

(程序过长,可附主要部分)

说明:以后每次实验报告均按此格式书写。

我在布置实验室时,仅给出实验名称、实验目的、实验内容及相关数据结构。

题目一程序参考框架 # include # include # include # include # include /* 定义ElemType为int类型 */ typedef int ElemType;#define TRUE 1 #define FALSE 0 #define NULL 0 #define flag-1

/* 单链表的结点类型 */ typedef struct LNode {ElemType data;struct LNode *next;} LNode,*LinkedList;

/* 初始化单链表 */ LinkedList LinkedListInit(){ } /* 清空单链表 */ void LinkedListClear(LinkedList L){ } /* 检查单链表是否为空 */ int LinkedListEmpty(LinkedList L){ } /* 遍历单链表 */ void LinkedListTraverse(LinkedList L){ } int LinkedListLength(LinkedList L){ } LinkedList LinkedListGet(LinkedList L, int i){ } LinkedList LinkedListLocate(LinkedList L, ElemType x){ }

void LinkedListInsert(LinkedList L, int i, ElemType x){LinkedList pre,p,s;int j;pre=L;j=1;p=L->next;while(pre&&jnext;j++;} if(pre==NULL){printf(“给的i值超过了表长”);exit(0);} s=(LNode *)malloc(sizeof(LNode));s->data=x;pre->next=s;s->next=p;}

void LinkedListDel(LinkedList L,ElemType x){ LinkedList pre,p;int j;pre=L;j=1;p=L->next;while(p&&p->data!=x){pre=p;p=p->next;j++;} if(p==NULL){printf(“表中没有值为x的结点”);exit(0);} pre->next=p->next;free(p);}

LinkedList LinkedListCreat(){ LinkedList L=LinkedListInit(),p,r;ElemType x;r=L;printf(“please input data,input-1 is endn”);scanf(“%d”,&x);while(x!=flag){p=(LinkedList)malloc(sizeof(LNode));p->data=x;r->next=p;r=p;scanf(“%d”,&x);} r->next=NULL;return L;}

int scan(){int d;printf(“please input the operationn”);printf(“1.初始化 2.清空3.求链表长度4.检查链表是否为空n”);printf(“5.检查链表是否为满 6.遍历链表 7.从链表中查找元素n”);printf(“8.从链表中查找与给定元素值相同的元素在顺序表中的位置n”);printf(“9.向链表中插入元素10.从链表中删除元素n”);printf(“其他键退出。。。n”);scanf(“%d”,&d);return(d);}

main(){int quit=0;int i;ElemType e;LinkedList L;while(!quit)switch(scan()){case 1: ….;break;case 2: ….;break;case 3: ….;break;case 4: ….;break;case 5:LinkedListTraverse(L);break;case 6: ….;break;case 7: ….;break;case 8: ….;break;case 9: ….;break;case 10: ….;break;default: quit=1;} return 0;}

第五篇:数据结构线性表试验报告

线性表上机实习

1、实验目的

(1)熟悉将算法转换为程序代码的过程。

(2)了解顺序表的逻辑结构特性,熟练掌握顺序表存储结构的C语言描述方法。

(3)熟练掌握顺序表的基本运算:查找、插入、删除等,掌握顺序表的随机存取特性。(4)了解线性表的链式存储结构,熟练掌握线性表的链式存储结构的C语言描述方法。(5)熟练掌握线性链表(单链表)的基本运算:查找、插入、删除等,能在实际应用中灵活选择适当的链表结构。

2、实验要求

(1)熟悉顺序表的插入、删除和查找。(2)熟悉单链表的插入、删除和查找。

3、实验内容: ① 顺序表

(1)抽象数据类型定义

typedef struct {

TypeData data[maxsize];

//容量为maxsize的静态顺手表

int n;

//顺序表中的实际元素个数

}SeqList;

//静态顺序表的定义

在本次实验中,首先建立一个空的静态顺序表,然后键盘输入数据存入表中,然后进入菜单选择界面,通过不同的数字输入,实现对顺序表,删除,插入,查找,显示等操作。

(2)存储结构定义及算法思想

在顺序表结构体的定义中,typedef int TypeData 为整型,存储结构如下:

for(n=0;n

cout<<“请输入线性表数据”<

cin>>L.data[n];

//顺序将数据存入顺序表

}

//其他存储与此类似,都是直接赋值与数组的某一位

插入版块子函数:

void insert(SeqList &L)

//插入数据 {

int a,b,c,k;

cout<<“请输入插入的数及其插入的位置”<

cin>>a>>b;

if(b<=0||b>(L.n+1)){cout<<“不能在该位置插入”<

k=L.data[b-1];L.data[b-1]=a;c=L.n;L.n=L.n+1;

while(c>b){

L.data[c]=L.data[c-1];c--;

//通过循环,实现插入位置后的数据挨个往后移动一位

}

L.data[b]=k;} 顺序表的插入与删除操作类似,在插入与删除后,都要循环调整后面数组的每一位元素,同时记录数据元素的长度的标示符也要跟着改变。显示操作是通过循环实现表中第一个元素到最后一个元素的输出,查找操作是直接取数组中的查找位输出。

(3)实验结果与分析

② 单链表

(1)抽象数据类型定义

typedef struct node{ DataType data;

//链表的数据类型

struct node *link;

//链表的结点指针

}linknode,*linklist;

//定义了结构体linklode和结构体指针linklist

在本次实验中,首先程序自己建立一个空的头结点,通过菜单的功能选择“添加链表数据”可自由添加链表的节点数及元素值。在菜单选择中,有“添加链数据”,“插入链表数据”,“删除链表数据”,“查找链表数据”和“显示链表数据”功能,选择不能的功能选择就能实现不同的操作。其中“添加链表数据”可反复批量输入链表数据。

(2)存储结构定义及算法思想

在单链表中,typedef int DataType;DataType data;定义链表存储数据位整型。存储结构如下:

while(p->link!=NULL){ p=p->link;

k++;

//首先找到单链表的最后结点(如果是只有头结点

} 的单链表则直接跳过),以便后面接着输入数据

for(int i=0;i

{ cout<<“请输入数据”<

//开辟新的结点空间并转化为linklist指针型

cin>>q->data;

q->link=p->link;

//将前面一个结点的指向(及NULL)赋给新开辟的结点的指向

p->link=q;

//将插入点前面一个结点指向新开辟的的结点

p=q;

//将指明的最后一个一个结点向后移1位到最后一位,以便后面接着输入

}

删除结点子函数:

void delate(linklist &l){

//删除单链表数据

linklist p;int m,n,i=0;

cout<<“请输入想要删除的结点位置”<

cin>>m;

p=l;

//将头结点赋给转移指针p

while(p&&i

//查找删除结点的位置

p=p->link;

//当在单链表中间已查到删除结点或p=NULL时跳出循环

i++;

} if(p==NULL){

//当p=NULL跳出循环时,表明链表中没有该结点

cout<<“该结点不存在,删除错误”<

}

n=p->link->data;//找到删除接结点将数据取出并显示出来(找结点时是找的前一个结点)

cout<<“被删除的结点元素为: ”<

p->link=p->link->link;

//将删除结点的前后结点链接起来

}

链表的删除,插入操作是类似的,要考虑到加入或减少一个结点后,前后结点的链接关系,以及删除或插入的是最后一个结点时,新空间的开辟与结点收尾等问题。其中删除功能的一部分就是查找功能,显示功能也是从链表的头结点遍历至最后一个,依次输出。

(4)实验结果与分析

③ 心得体会

本次数据结构实习我收获颇丰,以前学过c语言与c++也有经常上机,但以往都是偏向于程序整体的算法设计,没有像这次的实习这样是着重在线性表,链表结构的算法设计上面。这次上机实习,让我更加熟练了结构体及结构体指针的用法,线性表的设计等等,同时在这次实习中,引用,指针,地址这三个的用法曾一度让我混淆,在查阅书籍后才得以解决,也希望老师在课堂上有时间时给我们详细讲解一下,指针,地址,引用三者的使用。

附录:

顺序表源代码: #include using namespace std;#define maxsize 50 typedef int TypeData;typedef struct { TypeData data[maxsize];int n;}SeqList;

void makeSeq(SeqList &L)// 据 { int m,n,k;cout<<“请输入线性表长度”<>m;for(n=0;n>L.data[n];} L.n=m;cout<<“您输入的线性表为:”<

输入线性表数输出线性表数据

void insert(SeqList &L)//插入数据 { int a,b,c,k;cout<<“请输入插入的数及其插入的位置”<>a>>b;if(b<=0||b>(L.n+1)){cout<<“不能在该位置插入”<b){ L.data[c]=L.data[c-1];c--;} L.data[b]=k;} void delate(SeqList &L)//删除数据 { int wei;cout<<“请输入想要删除数据的位置”<>wei;if(wei<1||wei>L.n){ cout<<“不能在该位置删除”<>a;if(a<=0||a>(L.n)){cout<<“不能在该位置插入”<

cout<<“删除 2”<>xuanze;switch(xuanze){ case 1: insert(L);break;case 2: delate(L);break;case 3: find(L);break;case 4: showSeq(L);break;default :break;} } }

单链表源代码:

#include using namespace std;typedef int DataType;typedef struct node{ DataType data;struct node *link;}linknode,*linklist;

linklist chushihua(){ linklist L;L=(linklist)malloc(sizeof(linknode));L->link=NULL;cout<<“开辟空间成功,头结点建立”<>a;linklist p,q;

p=l;while(p->link!=NULL){ p=p->link;k++;} for(int i=0;i>q->data;q->link=p->link;p->link=q;p=q;} } void show(linklist l){ cout<<“链表数据为:”<link;while(p!=NULL){ cout<

data<<“ ”;p=p->link;} cout<>m;linklist p;p=l->link;while(p&&ilink;i++;} if(!p){ cout<<“链表没有这么长,查找错误”<data<

{ linklist p,q;int m,n,i=0;

cout<<“请输入您要插入的结点位置及插入的数据”<>m>>n;p=l;while(p&&ilink;i++;} if(p==NULL){ cout<<“不能在该位置插入,插入错误”<

q=(linklist)malloc(sizeof(linknode));q->data=n;q->link=p->link;p->link=q;}

void delate(linklist &l){ linklist p;int m,n,i=0;cout<<“请输入想要删除的结点位置”<>m;p=l;while(p&&ilink;i++;} if(p==NULL){ cout<<“该结点不存在,删除错误”<link->data;cout<<“被删除的结点元素为: ”<link=p->link->link;} void main(){ linklist L;int select;

L=chushihua();

while(1){ cout<<“请选择功能”<>select;switch(select){

case 1: shuru(L);break;case 2: insert(L);break;case 3: delate(L);break;case 4: find(L);break;case 5: show(L);break;default :break;} } }

下载数据结构--实验报告 线性表的基本操作word格式文档
下载数据结构--实验报告 线性表的基本操作.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    数据结构实验报告二线性表的顺序存储

    实验报告二 线性表的顺序存储 班级: 2010XXX 姓名: HoogLe 学号: 2010XXXX 专业: XXXX 2858505197@qq.com 一、 实验目的: (1) 掌握顺序表的基本操作的实现方法。 (2) 应用顺序表的基......

    数据结构实验报告三线性表的链式存储(5篇范文)

    实验报告三 线性表的链式存储 班级: 2010XXX 姓名: HoogLe 学号: 2010XXXX 专业: XXXX 2858505197@qq.com 一、 实验目的: (1) 掌握单链表的基本操作的实现方法。 (2) 掌握循环单链表......

    数据结构二叉树操作验证实验报告

    班级:计算机11-2 学号:40 姓名:朱报龙成绩:_________ 实验七 二叉树操作验证 一、 实验目的 ⑴ 掌握二叉树的逻辑结构; ⑵ 掌握二叉树的二叉链表存储结构; ⑶ 掌握基于二叉链表......

    数据结构实验报告

    注意:实验结束后提交一份实验报告电子文档 电子文档命名为“学号+姓名”,如:E01214058宋思怡 《数据结构》实验报告(一) 学号:姓名:专业年级: 实验名称:线性表 实验日期:2014年4月14日......

    数据结构实验报告

    南京信息工程大学实验(实习)报告 实验(实习)名称数据结构实验(实习)日期 2011-11-2得分指导教师周素萍 系公共管理系专业信息管理与信息系统年级10级班次1姓名常玲学号20102307003......

    数据结构实验报告

    数据结构实验报告 一. 题目要求 1)编程实现二叉排序树,包括生成、插入,删除; 2)对二叉排序树进行先根、中根、和后根非递归遍历; 3)每次对树的修改操作和遍历操作的显示结果都需要在......

    数据结构实验报告

    实验报告4 排序 一、实验目的 1、掌握常用的排序方法,并掌握用高级语言实现排序算法的方法。 2、深刻理解排序的定义和各种排序方法的特点,并能加以灵活应用。 3、了解各种方......

    数据结构实验报告

    数 据 结 构 实 验 报 告 1.问题描述 为某个单位建立一个员工通讯录管理系统,可以方便地查询每一个员工的办公室电话号码、手机号码及电子邮箱。 2. 设计分析 在本设计中,整......