順序表L由數組元素a[0..n-1]。將A中的每個元素依次放入序列表中,將n賦給序列表的length字段。算法是:
void create list(SqList * & amp;l,ElemType a[],int n){
int i=0,k = 0;
l =(SqList *)malloc(sizeof(SqList));//為存儲線性表分配空間
while(我& ltn){
l-& gt;data[k]= a[I];
k++;i++;
}
l-& gt;長度= k;//設置線性表的實際長度為k(即A的長度n)
}
擴展數據
線性表的特點:
1.對於同壹個線性表,雖然每個數據元素的值不同,但必須具有相同的數據類型;
2.數據元素之間存在線性或壹對壹的邏輯關系。
3.第壹個數據元素沒有前任,這個數據元素稱為起始節點;
4.最後壹個數據元素沒有後繼,這個數據元素稱為終端節點;
5.除了第壹個和最後壹個數據元素之外,其他數據元素只有壹個前導和壹個後繼。
線性表的抽象數據類型描述
基本操作如下:
1.線性表clear()的空操作:將現有線性表設置為空表。
2.線性表空操作isEmpty():判斷線性表是否為空,如果是,返回true;否則,返回是假的。
3.求線性表的長度運算length():求線性表中數據元素的個數並返回它們的值。