基本概念:
从逻辑上可以把数据结构分为线性结构和非线性结构两大类。
对于给定的n个元素,可以构造出的逻辑结构有:集合,线性结构,树形结构,图状结构或网状结构。
一个数据元素可以由若干个数据项组成。
数据项是最小单位。
线性表的顺序表示指的是用一组地址连续的存储单元依次存储线性表的数据元素。
构建一个空的线性表:
Status InitList-Sq(SqList &L){
L.elem=(ElemType *)malloc(LIST_INIT_SIZE * sizeof(Elemtype));
if(!L.elem)exit(OVERFLOW);
L.length=0;
L.listsize=LIST_INIT_SIZE;
return OK;
}
根据元素值查找位置:
int Locate (SqList L, ElemType e)
{ // 在顺序表L中查询第一个等于e的数据元素,
// 若存在,则返回它的位序,否则返回 0
i = 1; // i 的初值为第 1 元素的位序
for( i <= L.length; i++)
if( L.elem[i-1] = = e)
return i;
return 0;
} // Locate