資料結構之線性表(C)

2021-10-09 20:41:42 字數 1275 閱讀 1898

1、預定義狀態碼

#

define

true1#

define

false0#

defineok1

#define

error0#

define

infeasible-1

#define

overflow-2

2、預定義常量

#

define

list_init_size

100//線性表容量

#define

listincrement

10

3、定義線性表結構體

typedef

struct

/*定義線性表結構體*/

sqlist;

4、malloc()函式的使用

呼叫malloc()函式申請一塊連續的、指定大小的記憶體空間,並返回該記憶體空間的首位址,即乙個空型別的指標變數。故使用該函式時需對返回的指標型別進行強制轉換。例:p=(int *)malloc(sizeof(int))。

5、增加乙個空的線性表

status initlist_sq

(sqlist *l)

/*增加乙個空的線性表*/

6.1、按下標查詢,返回值

elemtype getelem

(sqlist *l,

int i)

/*查詢該線性表裡的第i個元素*/

6.2、按值查詢,返回下標

int

getelem

(sqlist l,elemtype value)

/*傳入乙個值,匹配線性表裡的元素,若匹配成功則返回下標i*/

7、插入元素

status listinsert_sq

(sqlist *l,

int i,elemtype e)

q =&(l->elem[i-1]

);for(p =

&(l->elem[l->length-1]

);p >= q;

--p)

*(p+1)

=*p;

*q = e;

l->length++

;return ok;

}

mysql 線性表 資料結構之線性表

概要 參考 大話資料結構 把常用的基本資料結構梳理一下。線性表定義 線性表 list 零個或多個資料元素的有限序列。若將線性表記為 a 1,cdots,a a i,a cdots,a n 則表中 a 領先於 a i a i 領先於 a 稱 a 是 a i 的直接前驅元素,a 是 a i 的直接後繼元...

資料結構之線性表

從現在開始,我們開始討論如何實現一些常用的資料結構和其中的一些經典演算法.等把資料結構講完了.我可能會繼續討論vc 的程式設計只是以及vs平台下的c c 開發等等.呵呵.我們進入正題吧.我在這裡就只實現線性表的連表結構.當然了,這裡實際上包含了好多知識.我希望大家在引用的時候.一定要領悟裡面的一些變...

資料結構之線性表

線性表是具有相同特性的資料元素的乙個有限序列。該序列中所含元素的個數叫做線性表的長度,用n表示,n 0。當n 0時,表示線性表是乙個空表,即表中不包含任何元素。設序列中第i i表示位序 個元素為ai 1 i n 線性表的一般表示為 a1,a2,ai,ai 1,an include include d...