搜索
您的当前位置:首页正文

实验一顺序表

来源:意榕旅游网
 注意事项:

在磁盘上创建一个目录,专门用于存储数据结构实验的程序。因为机房机器有还原卡,请同学们将文件夹建立在最后一个盘中,以学号为文件夹名。

实验一 顺序表操作

一、 实验目的

1、 掌握使用VC++上机调试线性表的基本方法;

2、 掌握线性表的基本操作:插入、删除、查找以及线性表合并等运算在顺序存储结构和链接存储结构上的运算。 二、 实验要求

1. 认真阅读和掌握本实验的程序。 2. 上机运行本程序。

3. 将剩余的操作函数补齐,如删除,判空,有序表的合并,求并集等。 三、 实验内容

例: 程序1:顺序表基本操作的实现

这个程序中演示了顺序表的创建、插入和查找和合并。 程序如下:

#include #include \"stdio.h\" #include #include

#define MAXSIZE 100

typedef int DataType ; //先设定数据元素的类型为整形 //定义顺序表的结构类型 typedef struct {

DataType data[MAXSIZE]; int length;

} SeqList,* PSeqList;

//初始化顺序表

PSeqList Init_SeqList( ){ PSeqList p; p=(PSeqList)malloc(sizeof(SeqList)); if (p) p->length=0; return p; }

//销毁顺序表

void Destroy_SeqList(PSeqList *p){ if (*p) free(*p); *p=NULL; }

//定位元素

int Location_SeqlList(PSeqList p,DataType x){ int i=0; if (!p) { printf(\"表不存在\"); return -1; } while(ilength && p->data[i]!=x) i++; if(i>=p->length) return 0; else return i+1; }

//插入

int Insert_SeqList(PSeqList p, int i, DataType x){ }

//删除

int Delete_SeqList(PSeqList p, int i){ }

//翻转表

void Reverse_SeqList(PSeqList p){ }

//合并两个有序表

void Merge_SeqList(PSeqList La, PSeqList Lb, PSeqList Lc){ }

//求两个表的并集

void Union_SeqList(PSeqList La, PSeqList Lb, PSeqList Lc){ }

//打印表中元素值

void PrintList(PSeqList L) { int i; for(i=0;ilength;i++) cout<data[i]<cout<//主函数 void main() { PSeqList La,Lb,Lc; int i; cout<<\"\\n\\n-------------------List Demo is running...----------------\\n\\n\"; cout<<\"First is InsertList function. \"<length<length<length<cout<<\"翻转Lc表\"<cout<<\"求并集\"<length<//销毁表 Destroy_SeqList(&La); Destroy_SeqList(&Lb); Destroy_SeqList(&Lc); }

因篇幅问题不能全部显示,请点此查看更多更全内容

Top