- 博客(12)
- 资源 (1)
- 收藏
- 关注
转载 双连通性
《数据结构与算法分析——C语言描述》 第九章 图论算法#include"hash.h"#include"graph.h"#include#include#include#include#include"fatal.h"#include#define MAXN 10000using namespace std;char nameRecord[MAXN][100];
2016-07-17 14:42:33 546
原创 网络最大流 相反的方向发回一个流 选取具有最少边数的路径
《数据结构与算法分析——C语言描述》 第九章 图论算法最少边数,就是用广度优先。图的表示用邻接表有几个地方不是很好,删除一条边的时候,和查找一条边的时候。都是单链表的问题,所以路径直接保存了指针。#include"hash.h"#include"graph.h"#include#include#include#include#include"fatal.h
2016-07-16 04:07:27 312
原创 一个简单的最大流算法
《数据结构与算法分析——C语言描述》 第九章 图论算法graph里面增加一个函数void setWeight(double weight, EdgeNodePtr p) { if (p) { p->weight = weight; }}深度搜索、简单的最大流Vertex startVex, endVex;//起点,终点Graph gr;//残余图
2016-07-15 21:26:10 575
原创 无圈图 关键路径
《数据结构与算法分析——C语言描述》 第九章#include"hash.h"#include"graph.h"#include#include#include#include"fatal.h"#include#include#include#define MAXN 10000char nameRecord[MAXN][100];int vexNum =
2016-07-15 16:23:55 729
转载 具有负边值的赋权最短路算法
struct TableEntry { int known; double dist; int isInQueue;//是否在队列中 int popCnt;//出队次数,应该不存在负圈,少于V+1 Vertex path;};typedef struct TableEntry* Table;//数组Table initTable(Vertex start, Graph g) {
2016-07-15 12:38:15 495
原创 Dijkstra算法
《数据结构与算法分析——C语言描述》 第九章struct TableEntry { int known; double dist; Vertex path;};typedef struct TableEntry* Table;//数组Table initTable(Vertex start, Graph g) { Table t; t = (Table)mallo
2016-07-11 12:44:41 352
原创 无权最短路径 广度优先搜索
《数据结构与算法分析——C语言描述》 第九章O(V^2)void unweighed(Vertex srcVex,Graph g) { int currDist; Vertex v, w; int *known = (int *)malloc(sizeof(int)*vexNum); if (known == NULL) Error("OUT OF MEMORY")
2016-07-11 00:00:42 522
原创 拓扑排序
《数据结构与算法分析——C语言描述》 第九章第九章不像以前那样直接给出代码了。是伪代码。很多具体实现需要自己去想。图的声明和实现想了挺久的。graph.h#ifndef _Graph_H#define _Graph_Hstruct EdgeNode;typedef struct EdgeNode* EdgeNodePtr;struct GraphReco
2016-07-10 16:40:44 1401
转载 硬币问题
算法竞赛入门经典(第二版) 第九章以前写的代码太简单了。。。#include#includeusing namespace std;#define MAXN 105#define INF 10000000int V[MAXN], Min[MAXN], Max[MAXN];int n, S;void print_ans(int *d, int S) { f
2016-07-05 23:32:29 397
转载 嵌套矩形问题
算法竞赛入门经典(第二版) 第九章深感智商之捉急。。。一个有向图。//#include#include#includeusing namespace std;#define MAXN 1010int n, G[MAXN][MAXN];int x[MAXN], y[MAXN], d[MAXN];//d(i)表示从结点i出发的最长路长度,d(i)=max{d(j)+1
2016-07-05 21:17:22 600 1
原创 不相交集
《数据结构与算法分析——C语言描述》 第八章disjset.h#ifndef _DisjSet_H#define _DisjSet_H#define NumSets 22typedef int DisjSet[NumSets + 1];//DisjSet为一个数组类型typedef int SetType;typedef int ElementType;voi
2016-07-05 17:47:56 425
原创 外部排序 替换选择
《数据结构与算法分析——C语言描述》 第七章#include #include#include"fatal.h"#define M 3//最大的内存#define N 33//要排序的数字量,1—Ntypedef int ElementType;char name[200];//生成的名字std::queue notHandleFile;std::queue nu
2016-07-05 13:19:44 1051
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人