计算机软件基础线性表.ppt

问3:在什么情况下用顺序表比链表好? 顺序表适宜于做查找这样的静态操作;链表宜于做插入、删除这样的动态操作。 若线性表的长度变化不大,且其主要操作是查找,则采用顺序表; 若线性表的长度变化较大,且其主要操作是插入、删除操作,则采用链表。 答: 具体要求 顺序表 链表 基于空间 适于线性表长度变化不大,易于事先确定其大小时采用。 适于当线性表长度变化大,难以估计其存储规模时采用。 基于时间 由于顺序表是一种随机存储结构,当线性表的操作主要是查找时,宜采用。 链表中对任何位置进行插入和删除都只需修改指针,所以这类操作为主的线性表宜采用链表做存储结构。若插入和删除主要发生在表的首尾两端,则宜采用尾指针表示的单循环链表。 应用实例1 删除顺序表la中所有值为x的数据元素。设顺序表的数据结构定义为: #define MAX 100 typedef int DataType; typedef struct { DataType List[MAX]; int num; /*最后一个数据元素的下标*/ }SeqList; void DeleteSeqList ( SeqList *la , DataType x ) { int j, k ; for (j=0; j=la-num; j++ )

文档评论(0)

1亿VIP精品文档

相关文档