Algorithm:【Algorithm算法进阶之路】之数据结构二十多种算法演示
Algorithm:【Algorithm算法進(jìn)階之路】之?dāng)?shù)據(jù)結(jié)構(gòu)二十多種算法演示
?
?
目錄
一、數(shù)據(jù)結(jié)構(gòu)算法
1、順序表
2、鏈表
3、棧和隊(duì)列
4、串的模式匹配
5、稀疏矩陣
6、廣義表
7、二叉樹
8、圖
9、存儲(chǔ)管理???
10、靜態(tài)查找
11、動(dòng)態(tài)查找
12、內(nèi)部排序
13、外部排序
?
?
相關(guān)文章
Algorithm:【Algorithm算法進(jìn)階之路】之?dāng)?shù)據(jù)結(jié)構(gòu)二十多種算法演示
Algorithm:【Algorithm算法進(jìn)階之路】之十大經(jīng)典排序算法
Algorithm:【Algorithm算法進(jìn)階之路】之?dāng)?shù)據(jù)結(jié)構(gòu)基礎(chǔ)知識(shí)
Algorithm:【Algorithm算法進(jìn)階之路】之?dāng)?shù)據(jù)結(jié)構(gòu)相關(guān)習(xí)題(數(shù)組、字符串、鏈表、棧、隊(duì)列、樹、圖、哈希)
Algorithm:【Algorithm算法進(jìn)階之路】之算法中的數(shù)學(xué)編程(時(shí)間速度、進(jìn)制轉(zhuǎn)換、排列組合、條件概率、斐波那契數(shù)列)相關(guān)習(xí)題
Algorithm:【Algorithm算法進(jìn)階之路】之算法(查找、排序、遞歸、復(fù)雜度、高級(jí)算法)相關(guān)習(xí)題
Algorithm:【Algorithm算法進(jìn)階之路】之機(jī)器學(xué)習(xí)相關(guān)習(xí)題
Algorithm:【Algorithm算法進(jìn)階之路】之Python語言相關(guān)習(xí)題
?
?
備注:數(shù)據(jù)結(jié)構(gòu)算法演示軟件,來自鄒老師所發(fā)資料
?
一、數(shù)據(jù)結(jié)構(gòu)算法
本系統(tǒng)內(nèi)含84個(gè)算法,分屬13部分內(nèi)容,由主菜單顯示,與《數(shù)據(jù)結(jié)構(gòu)》教科書中自第2章至第11章中相對(duì)應(yīng)。各部分演示算法如下:
1、順序表
(1)在順序表中插入一個(gè)數(shù)據(jù)元素(ins_sqlist)
(2)刪除順序表中一個(gè)數(shù)據(jù)元素(del_sqlist)
(3)合并兩個(gè)有序順序表(merge_sqlist)
?
2、鏈表
(1)創(chuàng)建一個(gè)單鏈表(Crt_LinkList)
(2)在單鏈表中插入一個(gè)結(jié)點(diǎn)(Ins_LinkList)
(3)刪除單鏈表中的一個(gè)結(jié)點(diǎn)(Del_LinkList)
(4)兩個(gè)有序鏈表求并(Union)
(5)歸并兩個(gè)有序鏈表(MergeList_L)
(6)兩個(gè)有序鏈表求交(ListIntersection_L)
(7)兩個(gè)有序鏈表求差(SubList_L)
?
3、棧和隊(duì)列
(1)計(jì)算阿克曼函數(shù)(AckMan)
(2)棧的輸出序列(Gen、Perform)
(3)遞歸算法的演示
- 漢諾塔的算法(Hanoi)
- 解皇后問題的算法(Queen)
- 解迷宮的算法(Maze)
- 解背包問題的算法(Knap)
?(4)模擬銀行(BankSimulation)
?(5)表達(dá)式求值(Exp_reduced)
?
4、串的模式匹配
???????(1)古典算法(Index_BF)
???????(2)求Next 函數(shù)值(Get_next)和按Next 函數(shù)值進(jìn)行匹配 (Index_KMP(next))
???????(3)求?Next 修正值(Get_nextval)和按?Next 修正值進(jìn)行匹配(Index_KMP(nextval))
?
5、稀疏矩陣
? ? ? ?(1)矩陣轉(zhuǎn)置?(Trans_Sparmat)
???????(2)快速矩陣轉(zhuǎn)置?(Fast_Transpos)
???????(3)矩陣乘法?(Multiply_Sparmat)
?
6、廣義表
? (1)求廣義表的深度(Ls_Depth)
????(2)復(fù)制廣義表(Ls_Copy)
??(3)創(chuàng)建廣義表的存儲(chǔ)結(jié)構(gòu)(Crt_Lists)
?
7、二叉樹
? ? ? ? (1)遍歷二叉樹
- 二叉樹的線索化
- 先序遍歷(Pre_order)
- 中序遍歷(In_order)
- 后序遍歷(Post_order)
????????(2) 按先序建二叉樹(CrtBT_PreOdr)
? ? ? ? (3) 線索二叉樹
- ?二叉樹的線索化
? ? ? ? ? ? ? ? ? 生成先序線索(前驅(qū)或后繼) (Pre_thre)
? ? ? ? ? ? ? ? ? 中序線索(前驅(qū)或后繼) (In_thre)
? ? ? ? ? ? ? ? ? 后序線索(前驅(qū)或后繼) (Post_thre)
- 遍歷中序線索二叉樹(Inorder_thlinked)
- 中序線索樹的插入(ins_lchild_inthr)和刪除(del_lchild_inthr)結(jié)點(diǎn)
???????(4)建赫夫曼樹和求赫夫曼編碼(HuffmanCoding)
???????(5)森林轉(zhuǎn)化成二叉樹(Forest2BT)
???????(6)二叉樹轉(zhuǎn)化成森林(BT2Forest)
???????(7)按表達(dá)式建樹(ExpTree)并求值(CalExpTreeByPostOrderTrav)
?
?
8、圖
???(1)圖的遍歷
- 深度優(yōu)先搜索(Travel_DFS)
- 廣度優(yōu)先搜索(Travel_BFS)
???????(2)求有向圖的強(qiáng)連通分量(Strong_comp)
???????(3)有向無環(huán)圖的兩個(gè)算法
- 拓?fù)渑判?Toposort)
- 關(guān)鍵路徑(Critical_path)
???????(4)求最小生成樹
- 普里姆算法(Prim)
- 克魯斯卡爾算法(Kruscal)
???????(5)求關(guān)節(jié)點(diǎn)和重連通分量(Get_artical)
???????(6)求最短路徑
- 弗洛伊德算法(shortpath_Floyd)
- 迪杰斯特拉算法(shortpath_DIJ)
?
9、存儲(chǔ)管理???
? ? ? ?(1)邊界標(biāo)識(shí)法?(Boundary_tag_method)
???????(2)伙伴系統(tǒng)?(Buddy_system)
???????(3)緊縮無用單元?(Storage_compaction)
?
?
10、靜態(tài)查找
? ? ? ?(1)順序查找(Search_Seq)
???????(2)折半查找 (Serch_Bin)
???????(3)插值查找?(Search_Ins)
???????(4)斐波那契查找 (Search_Fib)
???????(5)次優(yōu)查找樹(BiTree_SOSTree)
11、動(dòng)態(tài)查找
? ? ? ?(1)在二叉排序樹上進(jìn)行查找(bstsrch)、插入結(jié)點(diǎn)(ins_bstree)和刪除結(jié)點(diǎn)(del_bstree)
???????(2)在二叉平衡樹上插入結(jié)點(diǎn)(ins_AVLtree) 和刪除結(jié)點(diǎn)(del_AVLtree)
???????(3)在?B-樹上插入結(jié)點(diǎn)(Ins_BTree)?和 刪除結(jié)點(diǎn)(Del_BTree)
???????(4)在?B+樹上插入結(jié)點(diǎn)(Ins_PBTree)?和 刪除結(jié)點(diǎn)(Del_PBTree)
?
12、內(nèi)部排序
(1)簡(jiǎn)單排序法
- 直接插入排序(Insert_sort)
- 表插入排序(內(nèi)含插入(Ins_Tsort) ?重排(Arrange)兩個(gè)算法)
- 起泡排序(BubbleSort)?
- 簡(jiǎn)單選擇排序(SelectSort)
(2)復(fù)雜排序法
- 堆排序(HeapSort)
- 快速排序(QuickSort)
- 錦標(biāo)賽排序(Tournament)?
(3)其他
- 快速地址排序(QkAddrst)
- 基數(shù)排序(RadixSort)
- ?
13、外部排序
(1)多路平衡歸并排序(K-Merge)
(2)置換-選擇排序(Repl_Selection)
?
?
?
?
?
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的Algorithm:【Algorithm算法进阶之路】之数据结构二十多种算法演示的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Algorithm:C++语言实现之概率
- 下一篇: ML:推荐给小白入门机器学习一系列书籍