線性表型別的實現 順序映像

2021-06-13 11:44:59 字數 1068 閱讀 1369

順序映象:以 x 的儲存位置和 y 的儲存位置之間某種關係表示邏輯關係。

最簡單的一種順序映象方法是:令 y 的儲存位置和 x 的儲存位置相鄰。

順序映像的 c 語言描述:

順序表的儲存結構定義

#define  maxsize     100    

// 線性表儲存空間的分配量,即陣列長度  

typedef  struct   

sqlist;  // 俗稱 順序表 

建立並初始化為空表

status initlist(sqlist &l)  

將表l置空

status clearlist(sqlist &l)  

求表l的長度

int listlength(sqlist l)  

在表l中定位元素e首次出現的位置. 操作成功返回位序,失敗時返回0 

compare(a,b) 為比較函式,匹配時返回true,否則返回false

int locateelem(sqlist l, elemtype e, bool (*compare)(elemtype,elemtype))  

在表l中插入第i個元素e. 操作成功返回ok,失敗時返回error

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

l.elem[i-1]=e;  

++l.length;  

return ok;  

//-------------------------------------  

}

刪除表l中第i個元素,結果用e返回. 操作成功返回ok,失敗時返回error

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

--l.length;  

return ok;  

//-------------------------------------  

}

線性表型別的實現 鍊錶映像

用一組位址任意的儲存單元存放線性表中的資料元素。以元素 資料元素的映象 指標 指示後繼元素儲存位置 結點 表示資料元素 或 資料元素的映象 以 結點的序列 表示線性表 稱作鍊錶 結點和單鏈表的 c 語言描述 單鏈表的儲存結構定義 typedef struct lnode lnode,linklist...

線性表順序實現

線性表實現,建立表,插入元素,刪除元素,銷毀表,表的遍歷,表的並集交集差集。不斷更新中。include include include include define list init size 100 初始大小 define error 0 define listincrement 10 增量大小...

線性表的順序實現

include using namespace std 線性表的順序儲存結構 const int maxlistsize 100 class list 構造乙個空線性表 void clear bool isempty 判斷是否為空,若為空,返回true,否則返回false intgetelem in...