1 / 4
文档名称:

数据结构实验(一).doc

格式:doc   大小:42KB   页数:4页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构实验(一).doc

上传人:mh900965 2018/2/23 文件大小:42 KB

下载得到文件列表

数据结构实验(一).doc

文档介绍

文档介绍:实验一:基于链式存储结构的有序表的合并
实验学时:2学时
:
掌握链表的存储结构;
掌握链表的插入、删除等操作。
:
在链式存储结构中对有序表进行合并。
:
插入和删除步骤。
:
;
、删除功能。
源程序必须编译调试成功,独立完成。
实验器材:
一个装有C语言编译环境的计算机。
:
顺序表:

#include<>
#include<>
typedef struct Lnode {
Elemtype data;
struct Lnode *next;
}Lnode,*Linkllist;
:
编写对单顺序表进行删除操作的函数:
编写主函数
(1 ) #include<>
#include<>
typedef struct LNode {
int data;
struct LNode *next;
}LNode,*Linklist;
void initlist_L(Linklist &L,int t){
Linklist p,q;
L=(Linklist)malloc(sizeof(LNode));
L->next=NULL;
printf("链表一的容量:");
scanf("%d",&t);
printf("\n");
q=L;
for(int i=t;i>0;--i){
p=(Linklist)malloc(sizeof(LNode));
scanf("%d",&p->data);
p->next=NULL;
q->next=p;
q=p;
printf("链表一:\n");
}
}

void Mergelist_L(Linklist &L1,Linklist &L2,Linklist &L3){
pa=L1->next;
pb=L2->next;
L3=pc=L1;
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;
free(L2);
}
void display(Linklist L1 )
{
Linklist pa;
pa=L1->next;
while(pa)
{
printf("%d",pa->data);
pa=pa->next;
}
printf("\n");
}
void main()
{
Linklist pa,pb,pc;
printf("链表一\n");
initlist_L(L1);
printf("链表二\n");
initlist_L(L2);
printf("合并后的链表\n");