顺序查找(线性查找) 顺序查找(线性查找)设置哨兵的顺序查找:#include<iostream>#define MAXSIZE 100using namespace std;typedef char KeyType;typedef struct { KeyType key;}ElemType;typedef struct { ElemType* R; int length;}SSTable;void InitST(SSTable& ST) { ST.R = new ElemTy
有向无环网拓扑排序 有向无环网拓扑排序针对有向无环图!**有向无环图:**无环的有向图,简称DAG图(Directed Acycline Graph)#include <iostream>#include<cmath>#define OK 1#define ERROR 0#define TRUE 1#define FALSE 0#define MAXSIZE 100//定义无穷大#define MAXInt 32767typedef int Status;type
最小生成树——Prim算法(普利姆算法) 最小生成树——Prim算法(普利姆算法)我这里为了方便就不构建其他边集合的结构了,而是直接用图存储生成的最小生成树,有需要可以自己定义相关结构!#include <iostream>#include<cmath>#define OK 1#define ERROR 0#define TRUE 1#define FALSE 0#define MAXSIZE 100//定义无穷大#define MAXInt 32767typedef int Status;typ
邻接多重表 邻接多重表能不能只出现一次呢?#include<iostream>#define OK 1#define ERROR 0#define FALSE 0#define TRUE 1#define MAXNum 100using namespace std;/* 为啥要邻接多重表呢? 一开始的那个邻接表有啥问题呢,就是在存无向图的时候吧 它每条边都会存两次, 因为它的边结点的类型是data+firstedge(指向依附于该顶点的边) 然后我们把它修改一下: mark
线性表的应用——有序表的合并 有序表的合并初始条件:la和lb中的元素按值非递减排序要求:合并到lc,lc依然是按值非递减顺序表实现#include <iostream>#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define INFEASIBLE -1#define OVERFLOW -2#define MAXSIZE 100using namespace std;typedef int Status;//返回值类型typ