数据结构实验报告(共6页).doc
《数据结构实验报告(共6页).doc》由会员分享,可在线阅读,更多相关《数据结构实验报告(共6页).doc(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上云南大学数据结构实验报告第 四 次实验学号:姓名: 一、实验目的 复习线性表的逻辑结构,存储结构及基本操作;掌握顺序表和(带头结点)单链表;了解有序表。二、实验内容 (必做题)假设有序表中数据元素类型是整型,请采用顺序表或(带头结点)单链表实现: OrderInsert(&L,e,int(*compare)()/根据有序判定函数compare,在有序表L的适当位置插入元素e; 利用OrderInsert()构造有序表; OrderMerge(&La,&Lb,&Lc,int(*compare)()/根据有序判定函数compare,将两个有序表La和Lb归并为一个有序表L
2、c。 (选做题)请采用(带头结点)单链表实现: 升幂多项式的构造,即各个结点存储各项系数与指数,并且链表按指数升序有序;约定系数不能等于0,指数不能小于0) 两个升幂多项式的相加。三、算法描述(采用自然语言描述)分别插入第一个链表和第二个链表的数据;根据有序判定函数compare,将两个有序表La和Lb归并为一个有序表。输出归并后的有序表。四、详细设计(画出程序流程图) 开始输入数据输出归并后的有序表结束将两个有序表归并为一个有序表五、程序代码(给出必要注释)1.#include #include typedef struct LNodeint date; struct LNode *next
3、; LNode,*Link;/-线性表的单链表存储结构typedef struct LinkListLink head;/指向线性链表中的头结点 int len;/指示链表中数据元素的个数 LinkList;int compare (LinkList *L,int e)int Lc=0; Link p; p=L-head; p=p-next; while(p!=NULL)if(ep-date)p=p-next; Lc+; else return Lc; return Lc;/-有序判定函数comparevoid OrderInsert (LinkList *L,int e,int (*comp
4、are)()Link temp,p,q; int Lc,i; temp=(Link)malloc(sizeof(LNode); temp-date=e; p=q=L-head; p=p-next; Lc=(*compare)(L,e); if(Lc=L-len)while(q-next!=NULL)q=q-next; q-next=temp; temp-next=NULL;elsefor(i=0; inext;q=q-next; q-next=temp;temp-next=p; +L-len;/-利用OrderInsert()构造有序表;根据有序判定函数compare,在有序表L的适当位置插入
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 实验 报告
限制150内