C語言 線性表的順序表示和實現

2021-08-28 06:28:11 字數 1041 閱讀 7644

參考嚴蔚敏/吳偉民版《資料結構-c語言版》

線性表的順序表示指的是用一組位址連續的儲存單元依次儲存線性表的資料元素。

#define list_init_size 100 // 線性表儲存空間的初始分配量

#define listincrement 10 // 線性表儲存空間的分配增量

// 當因為插入新元素而儲存空間不足時,增加乙個大小為listincrement個資料元素的空間

typedef structsqlist;

status initlist_sq(sqlist &l)

status listinst_sq(sqlist &l, int i, elemtype e)

q = &(l.elem[i-1]); // q為插入的位置

for(p=&(l.elem[l.length-1]; p>=q; --p)

*q = e;

++l.length;

return ok;

}status listdelete_sq(sqlist &l, int i, elemtype &e)

--l.length;

return ok;

}int locateelem_sq(sqlist l, elemtype e, status (* compare)(elemtype, elemtype))

if(i < l.length) return i;

else return 0;

}void mergelist_sq(sqlist la, sqlist lb, sqlist &lc)

// 下面看還有誰有剩餘的元素,將其追加到lc後

while(pa <= pa_last) *pc++ = *pa++;

while(pb <= pb_last) *pc++ = *pb++;

}

注意陣列名確實指向陣列的第乙個元素的位址,但是不能移動;可以宣告乙個同型別的指標變數來移動讀取陣列中的元素

線性表 順序表示和實現(順序表)

線性表 順序表 實現 方式 陣列 說明 1.資料元素從下標0開始 2.順序表元素個數初始是為0,有乙個時為1,即 size比元素個數大1 3.也是size比陣列下標大1 4.有上限 maxsize 線性表 順序表 實現 陣列 1.資料元素從下標0開始 2.順序表元素個數初始是為0,有乙個時為1,即 ...

線性表的順序表示 C語言實現

include include define error 0 define ok 1 define equal 1 define overflow 1 define list init size 100 define listincrement 10 struct stustu 50 typedef...

線性表的順序表示和實現

1 線性表是最常用且最簡單的一種資料結構。簡言之,乙個線性表就是n個資料元素的有限序列。儲存空間是連續變化的 線性表的順序表示和實現 include include define list init size 10 define listincrement 10 define elemtype ch...