邏輯結構
線性結構 非線性結構(樹形結構 圖形結構)
#define maxsize 100
//以下所有定義均為
順序表 -陣列
typedef
sqlist;
//sequence list
一般定義方式為:
int a[maxsize]
;int n;
//長度
單鏈表
typedef
struct lnode
lnode;
//list node
雙鏈表
typedef
struct dlnode
dlnode;
迴圈鍊錶單雙迴圈鍊錶
將最後乙個節點的next指標指向頭節點
靜態鍊錶借助一維陣列來表示 下標 資料 下個節點下標值
刷題(未完成)
棧
順序棧 -陣列 共享棧
鏈棧 頭插法
佇列雙端佇列
順序隊 迴圈佇列
進隊操作 qu.rear=(qu.rear+1)%maxsize;鏈隊
定義兩個結構體 乙個隊節點 乙個鏈隊[隊頭指標(front)隊尾指標(rear)]刷題(未完成)
定長順序儲存
變長分配儲存表示(動態分配)
模式匹配演算法:對乙個主串中某子串的定位操作稱為串的模式匹配,待定位的子串稱為模式串kmp演算法 未學習
刷題(未完成)
陣列
一維二維 行優先 列優先
矩陣:就是多維陣列
矩陣轉置 矩陣相加 矩陣相乘
特殊矩陣常見的有三種
對稱矩陣
三角陣對角矩陣
稀疏矩陣
1. 順序儲存方式
三元組表示法
位址表示法
2. 鏈式儲存
鄰接表表示法
十字鍊錶表示法
廣義表
刷題(未完成)
樹的基本概念
結點的度:結點擁有的子樹個數或者分支的個數;
樹的度:樹中各結點度的最大值;
葉子結點(終端結點):度為0的結點
分支節點(非終端節點):度不是0的結點
二叉樹
儲存結構
遞迴遍歷演算法先序
中序後序
改進-非遞迴遍歷演算法
樹和森林與二叉樹的互相轉換
樹與二叉樹的應用
二叉排序樹與平衡二叉樹
赫夫曼樹和赫夫曼編碼
圖的儲存結構
鄰接矩陣
鄰接表鄰接多重表
圖的遍歷演算法
深度優先搜尋遍歷(dfs)
廣度優先搜尋遍歷(bfs)
最小生成樹未
普里姆演算法
可克魯斯卡爾演算法
最短路徑未
迪傑斯特拉演算法
佛洛依德演算法
拓撲排序未
aov網
拓撲排序核心演算法
關鍵路徑未
aoe網
關鍵路徑核心演算法
插入類排序
直接插入排序
折半插入排序
希爾排序
交換類排序
起泡(冒泡)排序
快速排序
選擇類排序
簡單選擇排序
堆排序
二路歸併排序
基數排序
外部排序
stl分析
作業系統
計算機網路
京東攜程順豐類公司
資料結構學習記錄 指標與陣列
陣列一旦被定義,陣列元素將在記憶體中占用一塊連續的儲存單元,陣列名就是這塊連續記憶體單元的首位址。c語言規定 對於指標的算數運算,是以指標指向的資料型別所占用的記憶體單元數為單位1 一維陣列與指標 例如 int a 5 p,q p a 0 陣列a表示陣列元素a 0 的位址,那麼a 1代表元素a 1 ...
9 14資料結構學習記錄
include include includeusing namespace std int main sqstack sqstack st int initstack sqstack st 初始化棧 int empty sqstack st int push sqstack st,int x in...
資料結構學習記錄(一)
因為學資料結構比較頭大 我們學的是c資料結構,而我早已經把c忘光了 看書也有點難懂,所以去leetcode刷題了。今天開始刷題記錄 因為我實在是不想把這麼多東西存到電腦,那麼乾脆雲乙份吧 這些記錄都比較個人,是做給自己看的。給定乙個整數型別的陣列 nums,請編寫乙個能夠返回陣列 中心索引 的方法。...