線性表詳解

2021-07-17 00:16:18 字數 1196 閱讀 7614

線性表

概念:線性表是乙個有限序列,各個表項相繼排列,第乙個為表頭,最後乙個是表尾,且每兩個相鄰項之間有前驅和後繼的關係。

線性表分為有序線性表和無序線性表。

1.順序表的儲存單元 l

a1 a2

... ai

... an

0 1

i-1

n-1

線性表l

**實現儲存結構的建立

#define maxsize 100  // 宣告最大空間

100typedef int datatype; //型別定義

typedef struct //定義結構體

sqlist; //結構體名稱

void creat_list(sqlist *l, int n) //建立線性表

2.線性表的插入

由於在i

位置插入

x,導致

i位置之後所有的數字都要向後移動乙個位置,

i位置前面的位置都不移動。

程式設計思路:

1.先判斷順序表是否滿,插入的位置是否正確

2.在插入之前,先給x

空出位置,也就是說把

an—ai

元素依次往後移動。

3.將x

插入空出來的位置上

4.線性表的長度增加1.

**實現:

sqlist  insert_list(sqlist l,int i,datatype x)

return l;

}   

3.線性表的刪除

由於在i

位置刪除

ai,導致

i位置之後所有的數字都要向前移動乙個位置,

i位置前面的位置都不移動。

程式設計思路:

1.判斷所刪除的元素是否在範圍之內

2.將該位置上的值刪除

3.將該值刪除之後,從最後乙個元素開始,依次往前移動

4.線性表的長度減一。

**實現:

remove_list(sqlist l,int i)

return 0; }

鏈式線性表和順序線性表

在這裡插入 片 線性表的儲存結構 typedef struct seqlist typedef struct seqlist 順序表基本操作 初始化順序表在這裡插入 片 intseqlist init seqlist list,int size 插入資料元素在這裡插入 片 intseqlist in...

線性表演算法題庫 線性表習題

鍊錶。若指標p指向某結點時,能夠根據該指標找到其直接後繼,能夠順後繼指標鏈找到p結點後的結點。但是由於不知道其頭指標,所以無法訪問到p指標指向的結點的直接前趨。因此無法刪去該結點。2.雙鏈表。由於這樣的鍊錶提供雙向指標,根據p結點的前趨指標和後繼指標可以查詢到其直接前趨和直接後繼,從而可以刪除該結點...

刪除線性表節點 線性表

submit 81 solved 66 submit status web board 已知長度為n的線性表a採用順序儲存結構,請寫一時間複雜度為0 n 空間複雜度為0 1 的演算法,該演算法刪除線性表中所有值為item的資料元素。o 1 表示演算法的輔助空間為常量 輸入 n 6 輸入資料 1 2 ...