(一) 資料結構以及相關概念的定義
(二) 抽象資料型別
(三) 演算法的時間複雜度和空間複雜度(一) 線性表的定義和基本操作
(二) 線性表的實現
1. 順序儲存結構
#define list_init_size 100
//線性表儲存空間的初始分配量
#define listincrement 10
//線性表儲存空間的分配增量
typedef
struct
sqlist;
2. 鏈式儲存結構,迴圈鍊錶,雙向鍊錶
//單鏈表/迴圈鍊錶
typedef
struct lnodelnode,
*linklist;
//雙向鍊錶
typedef
struct dulnodedulnode,
*dulinklist;
3. 線性表的應用(一) 棧和佇列的基本概念
(二) 棧和佇列的順序儲存結構
//棧的順序儲存表示
#define stack_init_size 100;//儲存空間初始分配量
#define stackincrement ;//儲存空間分配量
typedef struct sqstack;
//迴圈佇列的順序儲存結構
#define maxqsize 100; //最大佇列長度
typedef struct sqqueue;
(三) 棧和佇列的鏈式儲存結構
//佇列的鏈式儲存
typedef struct qnodeqnode,*queueptr;
typedef struct linkqueue;
(四) 棧和佇列的應用void conversion()
while(! stackempty(s))
}
void lineedit()
ch=getchar(); //從終端接收下乙個字元
} //將才棧底到棧頂的棧內字元傳送至呼叫過程的資料區
clearstack(s);
if(ch!=eof) ch=getchar();
} destroystack(s);
}
(一) 串的各種儲存表示和操作#define maxstrlen 255 //使用者可在255以內定義最大串長
typedef unsigned char sstring[maxstrlen+1];//0號單元存放串的長度
typedef struct hstring;
#define chunksize 80;//使用者可定義的塊大小
typedef struct chunkchunk;
typedef struct lstring;
(二) kmp演算法
這個推送講得很詳細:
這篇待看:
(一) 陣列的基本概念、表示和實現
(二) 矩陣的壓縮儲存
1. 特殊矩陣
2. 稀疏矩陣
(三) 廣義表的定義和儲存結構
15 資料結構和演算法應用
大問題拆分成規模小的問題,往往用到遞迴 八皇后深度優先搜尋法 不一定得到的是最優解,價效比方案 判斷貪心法,看每一步是不是最優解,而最終的結果不見得是最優解 0 1揹包問題,就是如下,乙個揹包裝東西只能裝一種 邏輯複雜,跟分治法類似 動態規劃法特點,查表,就是拆分問題,將問題記錄到表,然後查表 我們...
第9章 資料結構
第9章 資料結構 my frames,button my sub of 日誌查詢 push button2 溫金簡訊查詢 push button3 中均簡訊查詢 push button4 機器資訊查詢 push button5,ip資訊查詢 push button6,裝置資訊維護 push butt...
第9章 資料結構
9.1.1 建立和訪問乙個兩維陣列 root wx03 4 cat a1.pl aoa fred barney george jane elroy homer marge bart print aoa 0 1 print n root wx03 4 perl a1.pl barney aoa 0 1...