原创 線索二叉樹和非遞歸遍歷(中序)
基於中序遍歷的線索二叉樹和非遞歸遍歷 #include <stdio.h> #include <malloc.h> #define MaxSize 100 typedef char ElemType; typedef struct no
原创 圖的遍歷之深度優先遍歷DFS
GraphBasicOperation.cpp文件鏈接:https://blog.csdn.net/qq_16261421/article/details/106005857 深度優先搜索遍歷的過程是: (1)從圖中某個初始頂點v出發
原创 圖數據結構的定義
用鄰接矩陣和鄰接表存儲,將其命名爲文件graph.h頭文件,後續圖的所有算法都依賴於該文件。 1.鄰接矩陣存儲方法 鄰接矩陣是表示頂點之間相鄰關係的矩陣。設G=(V,E)是具有n(n>0)個頂點的圖,頂點的順序依次爲
原创 圖的遍歷之廣度優先遍歷BFS
GraphBasicOperation.cpp文件鏈接:https://blog.csdn.net/qq_16261421/article/details/106005857 廣度優先搜索遍歷的過程是: (1)訪問初始點v,接着訪問v
原创 環形隊列2-基於隊頭指針和隊列中元素的個數的另一種實現
基於隊頭指針和隊列中的元素個數實現環形隊列 對於環形隊列來說,如果知道隊頭指針和隊列中元素個數,則可以計算出隊尾指針。也就是說,可以用隊列中元素個數代替隊尾指針。 由隊頭指針和元素個數進行如下計算: 已知f
原创 稀疏矩陣十字鏈表表示法
稀疏矩陣十字鏈表表示法和基本運算 #include <stdio.h> #include <malloc.h> #define M 3 //矩陣行 #define N 3 //矩陣列 #
原创 廣義表的基本運算
廣義表的基本運算和實現 #include <stdio.h> #include <malloc.h> #include "glnode.h" int GLLength(GLNode *g) //求廣義表g的長度 { int n=0;
原创 稀疏矩陣三元組表示法
稀疏矩陣三元組表示法的定義及其基本運算 #include <stdio.h> #define M 6 #define N 7 #define MaxSize 100 //矩陣中非零元素最多個數 typedef int
原创 數據結構(JAVA版)
數據結構JAVA語言版 常用算法和數據結構 單鏈表:https://blog.csdn.net/qq_16261421/article/details/92423147 循環單鏈表:https://blog.csdn.net/qq_162
原创 BF算法(簡單匹配算法)
字符串的簡單匹配算法-BF算法的實現 #include "sqstring.cpp" int index(SqString s,SqString t) { int i=0,j=0; while (i<s.length && j<t.
原创 數據結構(C語言實現)
數據結構-C語言實現 常用算法清單: 數據結構(C語言版) 順序表:https://blog.csdn.net/qq_16261421/article/details/103951230 單鏈表:https://blog.csdn.net
原创 先序遍歷+中序遍歷->二叉樹 & 中序遍歷+後續遍歷->二叉樹
#include"btree.cpp"文件鏈接:https://blog.csdn.net/qq_16261421/article/details/105920539 由先序遍歷和中序遍歷可以唯一的確定一顆二叉樹,使用遞歸的方法創建。 由
原创 折半插入排序(二分插入排序)-JAVA語言版本
import java.util.Arrays; public class BinaryInsertSort { //這般插入排序 public static void main(String[] args) {
原创 直接插入排序-JAVA語言實現
//直接插入排序 import java.util.Arrays; public class DirectInsertSort { /** * @param args */ public static void Di
原创 快速排序-JAVA語言實現
import java.util.Scanner; public class QuickSort { /** * @param args */ public static void Display(int[] ar