1
实验一
线性表的基本操?/p>
一、实验目的与基本要求
1
.掌握数据结构中的一些基本概念。数据、数据项、数据元素、数据类型和?/p>
据结构,以及它们之间的关系?/p>
2
.了解数据的逻辑结构和数据的存储结构之间的区别与联系;数据的运算与数
据的逻辑结构的关系?/p>
3
.掌握顺序表和链表的基本操作:插入、删除、查找以及表的合并等运算?/p>
4
.掌握运?/p>
C
语言上机调试线性表的基本方法?/p>
二、实验条?/p>
1
.硬件:一台微?/p>
2
.软件:操作系统?/p>
C
语言系统
三、实验方?/p>
确定存储结构后,上机调试实现线性表的基本运算?/p>
四、实验内?/p>
1
.建立顺序表,基本操作包括:初始化,建立一个顺序存储的链表,输出顺?/p>
表,判断是否为空,取表中?/p>
i
个元素,定位函数(返回第一个与
x
相等?/p>
元素位置?/p>
,插入,删除?/p>
2
.建立单链表,基本操作包括:初始化,建立一个链式存储的链表,输出顺?/p>
表,判断是否为空,取表中?/p>
i
个元素,定位函数(返回第一个与
x
相等?/p>
元素位置?/p>
,插入,删除?/p>
3
.假设有两个按数据元素值非递减有序排列的线性表
A
?/p>
B
,均以顺序表作为
存储结构?/p>
编写算法?/p>
A
表和
B
表归并成一个按元素值非递增有序
(允许?/p>
相同)排列的线性表
C
?/p>
(可以利用将
B
中元素插?/p>
A
中,或新?/p>
C
表)
4
?/p>
假设有两个按数据元素值非递减有序排列的线性表
A
?/p>
B
?/p>
均以单链表作?/p>
存储结构。编写算法将
A
表和
B
表归并成一个按元素值递减有序(即非递增?/p>
序,允许值相同)排列的线性表
C
?/p>
五、附源程序及算法程序流程?/p>
1.
源程?/p>
?/p>
1
)源程序
(
实验要求
1
?/p>
3)
#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
#define LIST_INIT_SIZE 100
#define LISTINCREMENT 10
typedef struct arr
{