資料結構中最基礎的部分便是線性表得順序儲存結構,特在此分享一下
#include #include #include #include using namespace std;
typedef struct
sqlist;
typedef enum status;
status initiate(sqlist *p, int max_size)//初始化
void clear(sqlist *p)//清空線性表
void destroy(sqlist *p) // 摧毀線性表
/*!!!!有空測試下形參不用引用的結果是否正確!!!!*/
status insert(sqlist *p, int i, int e) //插入演算法,將元素e插入到i號元素之前,時間複雜度o(n/2)
status del(sqlist *p, int i) //刪除線性表裡的i號元素
status merge(sqlist *a, sqlist *b, sqlist *c)//合併順序表a,b 存於c中
int main()
/* if(!del(h, 77))//刪除的驗證
*/cout << locate(h, 78) << endl; //驗證定位函式
for(i = 0; i<100; i++)
cout << h->elem[i] << endl;
return 0;
}
資料結構 線性表順序儲存(順序表)
特點 線性表的順序儲存是指用一組位址連續的儲存單元依次儲存線性表中的各個元素。作用 線性表中在邏輯結構上相鄰的資料元素儲存在相鄰的物理儲存單元中,即通過資料元素 物理儲存的相鄰關係來反映 資料元素之間 邏輯上的相鄰關係 順序儲存的實現 一維陣列儲存順序表中的資料 缺點 大小固定,使用前需要分配位址,...
《資料結構 線性表》順序儲存
一 什麼是線性表?線性表定義 0個 或 多個 資料元素 有限 序列。序列 這個必須是有順序的,若元素存在多個,則第乙個元素無前驅,最後乙個元素無後驅。乙個元素只能有乙個前驅 後驅。有限 線性表必須是有限的,無限的只存在於數學中。線性表元素個數必須是 大於 0,當 n 0 時,稱為空表。二 線性表抽象...
資料結構 線性表 順序儲存結構
1.線性表定義 線性表 list 零個或多個資料元素的有限序列。關鍵知識點 1.首先它是乙個序列,元素之間室友順序的 2.線性表強調的是有限的,元素個數是有限的 3.在較複雜的線性表中,乙個資料元素可以由若干個資料項組成。其數學定義 若將線性表標記為 a1,ai 1 ai ai 1 a n 則表中的...