人人范文网 范文大全

数据结构实验报告2

发布时间:2020-03-02 09:49:43 来源:范文大全 收藏本文 下载本文 手机版

南京信息工程大学实验(实习)报告

实验(实习)名称数据结构实验(实习)日期 2011-11-9得分指导教师周素萍

系 公共管理专业信息管理与信息系统年级班次 学号2010230700

3实验二数据结构第二次实验要求(链表)

【实验目的】

1、链表的基本操作及 C 语言实现

【实验要求】

1、用 C 语言建立自己的链表结构的程序库,实现链表的基本操作。

2、对链表表示的集合,集合数据由用户从键盘输入(数据类型为整型),建立相应的顺序 表,且使得数据按从小到大的顺序存放,将两个集合的并的结果存储在一个新的线性表集合 中,并输出。

3、撰写实验报告并附上集合操作的程序和结果。

【实验内容】

1、根据教材定义的链表结构,用 C 语言实现链表结构的创建、插入、删除、查找等操作;

2、利用上述链表操作实现如下程序:建立两个链表表示的集合(集合中无重复的元素),并求这样的两个集合的并。

【实验结果】

[实验数据、结果、遇到的问题及解决]

一、Status DeleteAndInsertSub(LinkList &la,LinkList &lb,int i,int j,int len) {

LinkList p,q,s,prev=NULL; int k=1; if(inext; k++;

}

// 在la表中查找第i+len-1个结点 q=p; k=1; while(q&&knext; else prev->next=q->next; // 将从la中删除的结点插入到lb中 if(j=1){} else{} return OK; s=lb;} if(!s)return INFEASIBLE; q->next=s->next; s->next=p; //完成插入 k=1; q->next=lb; lb=p; q=p->next; k++; while(s&&knext; k++;

二、// 将合并逆置后的结果放在C表中,并删除B表

Status ListMergeOppose_L(LinkList &A,LinkList &B,LinkList &C) {

LinkList pa,pb,qa,qb,pt; pa=A; pb=B; qa=pa; qb=pb; // 保存pa的前驱指针 // 保存pb的前驱指针 pa=pa->next; pb=pb->next; A->next=NULL; C=A; while(pa&&pb){ if(pa->datadata){pt=pa; pa=pa->next;

qa->next=pa;

free(pt);

}

else

if(pa->data>pb->data){pt=pb;

pb=pb->next;qb->next=pb;free(pt);}

else{

qa=pa;

pa=pa->next;}

}

while(pa){

pt=pa;

pa=pa->next;

qa->next=pa;

free(pt);

}

while(pb){

pt=pb;

pb=pb->next;

qb->next=pb;

free(pt);

}

pb=B;

free(pb);

return OK;

}

数据结构实验报告

数据结构实验报告

数据结构实验报告

数据结构实验报告

数据结构实验报告

数据结构实验报告

数据结构实验报告

数据结构实验报告

数据结构实验报告

数据结构实验报告

数据结构实验报告2
《数据结构实验报告2.doc》
将本文的Word文档下载到电脑,方便编辑。
推荐度:
点击下载文档
点击下载本文文档