上传者: 43934844
|
上传时间: 2022-07-11 19:06:43
|
文件大小: 118KB
|
文件类型: PDF
实验一 线性表 一、实验目的 1、掌握线性表的逻辑结构。 2、掌握线性表的链式存储结构。 3、掌握线性表的插入、删除等操作。 二、实验设备 PC计算机,VC+ + 三、实验原理 1、为使算法的时间复杂度为O(n+m)只能采用"平移指针,一次扫 描"的方法,于是设两个指针分别指向两个线性表表头。 2、为使合并后仍为一个有序表,需对指针所指结点的数据域进行比 较。 3、要使合并后的有序表为递减有序表,比较后选出较小的一个将其从 原链表中取出插入到新表的表首。 4、指针后移,重复2,3步,直到其中一个表结束,将未结束表的元素 依次取出插入新表。 5、为减少头指针的变化,采用带有头结点的链表。 四、实验步骤 struct node {int data; struct node *link; } typedef struct node NODE; NODE *merge_link(NODE *head_a,NODE *head_b) {NODE *p,*q,*head; head=(NODE*)malloc(sizeof(NODE)); head->link=NULL; p=head_a->li