源自嚴蔚敏老師的教材,最近學校剛上完資料結構中的線性表,敲了下基本操作,沒啥好說的,直接上**,
注:這是我隨手敲的,可能存在一些問題,僅供參考,僅供參考,僅供參考!!!
#include
using
namespace std;
#define list_init_size 100
//線性表儲存空間的初始分配量
#define listincrement 10
//線性表初始儲存空間的分配增量
#define ok 1
#define error 0
#define true 1
#define false 0
typedef
int status;
typedef
int elemtype;
typedef
struct
sqlist;
status initlist_sq
(sqlist &l)
;//初始化線性表
status destroylist
(sqlist &l)
;//銷毀線性表
status clearlist
(sqlist &l)
;//清空線性表
status listempty
(sqlist l)
;//判斷線性表是否為空
status listlength
(sqlist l)
;//返回線性表中的元素個數
status getelem
(sqlist l,
int i, elemtype &e)
;//用e返回l中第i個元素
status locateelem
(sqlist l, elemtype e,
status
(*compare)
(elemtype, elemtype));
status priorelem
(sqlist l, elemtype cur_e, elemtype &pre_e)
;//尋找元素cur_e的前驅元素
status nextelem
(sqlist l, elemtype cur_e, elemtype &next_e)
;//尋找元素cur_e的後繼元素
status listinsert
(sqlist &l,
int i, elemtype e)
;status listdelete
(sqlist &l,
int i, elemtype e)
;//刪除線性表第i個位置的元素,其值用e帶出
intmain()
status initlist_sq
(sqlist &l)
l.length =0;
l.listsize = list_init_size;
return ok;
}status destroylist
(sqlist &l)
status clearlist
(sqlist &l)
status listempty
(sqlist l)
return false;
}status listlength
(sqlist l)
status getelem
(sqlist l,
int i, elemtype &e)
else
}status priorelem
(sqlist l, elemtype cur_e, elemtype &pre_e)
for(
int i =
1; i < l.length; i++)}
return error;
}status nextelem
(sqlist l, elemtype cur_e, elemtype &next_e)
for(
int i =
0; i < l.length -
1; i++)}
return error;
}status listinsert
(sqlist &l,
int i, elemtype e)
if(l.length >= l.listsize)
l.elem = newbase;
l.listsize +
= listincrement;
} l.length++
;for
(int j = l.length -
1; j >= i -
1; j--
) l.elem[i]
= e;
return ok;
}status listdelete
(sqlist &l,
int i, elemtype &e)
e = l.elem[i -1]
;for
(int j = i ; j < l.length; j++
) l.length--
;return ok;
}
C語言 嚴蔚敏資料結構 線性表之鍊錶實現
博主最近在考成都大學皇家電腦科學與技術專業,複習專業課資料結構,正好學習到線性結構中的線性表用鍊錶這種儲存結構來實現。首先,資料結構包括1 資料的操作2 邏輯結構3 儲存結構 資料結構三要素。linklist initlist int i i為鍊錶大小 end next null return he...
資料結構 嚴蔚敏
最近一直想找一本純資料結構的書來學習,找來找去都沒有找到一本合適的書籍,相比之下國內的書籍之中,嚴蔚敏和吳偉民的還算是經典版了,很多國內其他資料結構教材都參考這本書的。但缺點是很多都是偽 對程式設計初學者來說有一些難度,甚至有些考研的同學來看這本書有很多還看不懂,並且裡面也有些容易迷惑人的地方。出於...
資料結構(嚴蔚敏)
說起為什麼重新拿起這本書,著實非常慚愧。是因為面試的時候,第乙個面試官面試完專案之後。第二面試官說我們就當聊聊天,考考資料結構,演算法就好了。結果以乙個問題就把我難住了,這個問題是 雜湊表是什麼?所以我打算花兩天的時間重新把這本書看一遍,並做下筆記,這次我一定會記住。目前,計算機已深入到社會生活的各...