線性表 順序表

2021-09-27 06:14:26 字數 974 閱讀 3166

基本思想:用一段位址連續的儲存單元一次儲存線性表的資料元素(隨機訪問);

注意事項:c++語言中陣列下標是從0開始的,而線性表中元素序號是從1開始的,也就是說

線性表中第i個元素儲存結構在陣列中下標為i-1的位置。

首先是大體的函式宣告:

const int  maxsize=100;//根據實際問題定義具體的大小

template//由於資料型別不同所以定義摸板類

class seqlist

;

建構函式:

(1)當順序表為空時:

seqlist()//僅需將線性表長度置為0即可;
(2)順序表不為空時:

template //有參建構函式其中n為資料的數量,t a為模板陣列,其目的時將陣列中的元素傳入到順序表中

seqlist:: seqlist(t a, int n)

按值查詢:

template int seqlist::locate(t x)

刪除操作:

其基本思想是將表的第i個元素刪除,使長度為n的線性表變成長度為n-1的線性表,且刪除後元素i-1和i+1之間邏輯關係發生了變化並且儲存位置要反映這個變化;

template datatype seqlist::delete(int i)

{ datatype x;

if(length==0) throw"下溢";

if(i<1||i>length) throw"刪除位置錯誤";

x=data[i-1]//取第i個位置的元素

for(int j=i;j必須從第i+1個元素開始(下標為i)直至將最後乙個元素前移為止,並且移動之前要取出被刪除元素。此外還需判斷刪除位置合理性;

不在簡述。。。。

線性表 順序表

1 線性表 線性表是最基本 最簡單 也是最常用的一種資料結構。線性表中資料元素之間的關係是一對一的關係,即除了第乙個和最後乙個資料元素之外,其它資料元素都是首尾相接的。線性表的邏輯結構簡單,便於實現和操作。因此,線性表這種資料結構在實際應用中是廣泛採用的一種資料結構。線性表 list,零個或多個資料...

線性表 順序表

線性結構的特點是 在非空的有限集合中,只有唯一的第乙個元素和唯一的最後乙個元素。第乙個元素沒有直接前驅元素,最後乙個沒有直接的後繼元素。其它元素都有唯一的前驅元素和唯一的後繼元素。要想將線性表在計算機上實現,必須把其邏輯結構轉化為計算機可識別的儲存結構。線性表的儲存結構主要有兩種 順序儲存結構和鏈式...

線性表 順序表

線性表的adt list.h templateclass list 順序表的事先宣告 沒有定義成內嵌的順序表成員函式的實現 alist.h include stdafx.h include list.h define defaultlistsize 255 template class alist ...