1、線性表的主要內容
線性表的邏輯結構
線性表的順序結構
線性表的鏈式儲存
順序表和單鏈表的比較
2、線性表的定義
零個或多個具有相同型別的資料元素的有限序列。元素的個數就是表的長度。長度為0就是空表。
順序儲存結構及實現
用一段連續的位址來儲存資料。
每個元素在儲存空間的相鄰關係和物理相鄰關係相同,可通過下表實現隨機訪問。
順序儲存通過一維陣列實現它。
const int maxsize=100;
template
class seqlist //返回表的長度;
//下面實現查詢功能
t get(int i); //按位置查詢,返回該物理位置的元素資料;
int loc(t a); //按值查詢,返回該元素的物理位置;
void insert(t a,int i);//把a元素插入 i 位置;
t delete( int i) ; //把 i位置上的元素刪除,並返回被刪的元素資料;
void printlist(); //遍歷順序表,輸出所有資料;
3、順序表
可隨機利用下標訪問表內資料。
缺點:插入和刪除較為麻煩,時間複雜度為o(n);靜態儲存,難以確定儲存規模。
鏈式儲存結構及實現
為了解決順序表,難以確定儲存規模的這一問題,可利用動態儲存,由程式設計師向系統申請空間來進行儲存。
鏈式儲存包括:
單鏈表雙鏈表
迴圈鍊錶
鍊錶節點的定義
template
struct node{
t data; //前驅
線性表總結
例 一元多項式及其運算 一元多項式 主要運算 多項式相加 相減 相乘等 分析 如何表示多項式?多項式的關鍵資料 多項式項數n 各項係數ai 及指數 i 方法1 順序儲存結構直接表示 陣列各分量對應多項式各項 a i 項xi的係數ai 方法2 順序儲存結構表示非零項 按指數大小有序儲存!相加過程 從頭...
線性表總結
順序表是將表中的結點依次存放在計算機記憶體中一組位址連續的儲存單元中。將表中元素乙個接乙個的存入一組連續的儲存單元中,這種儲存結構是順序結構。二 單向鍊錶 單向鍊錶 單鏈表 是鍊錶的一種,其特點是鍊錶的鏈結方向是單向的,對鍊錶的訪問要通過順序讀取從頭部開始。三 迴圈鍊錶 它和單鏈表的差別僅在於,判別...
線性表知識總結
線性表順序儲存結構 const int maxsize n template class seqlist public seqlist seqlist datatype a,int n seqlist int length datatype get int u int locate datatype...