算法与数据结构
liangwgl
如何走出困惑?
多走几步。
展开
-
快速排序算法
近日读到关于“快速排序算法”介绍的文章,感觉挺通俗易懂的,如下-------------------------------------------------------------------------------------------------------------------------------------假设我们现在对“6 1 2 7 9 3 4 5 10转载 2017-09-04 20:00:38 · 196 阅读 · 0 评论 -
邻接表存储图&&Bellman-Ford解决负边权
邻接表与Bellman-Ford算法原创 2017-09-26 16:12:36 · 385 阅读 · 0 评论 -
完全二叉树
完全二叉树1.完全二叉树的最小堆中父节点都比左儿子节点和右儿子节点要小, 若某节点的编号为i,则他的父节点编号为i/2(取整),他的左儿子节点编号为i*2,右儿子节点编号为i*2+12.最小堆的向下调整 若将编号为i的节点替换,则为了满足最小堆特点,调整函数 void siftdown(int i) {原创 2017-09-27 15:21:40 · 737 阅读 · 0 评论 -
用二叉树的遍历的组合来还原该二叉树
现在有一个问题,已知二叉树的前序遍历和中序遍历:PreOrder: GDAFEMHZInOrder: ADEFGHMZ我们如何还原这颗二叉树,并求出他的后序遍历? 我们基于一个事实:中序遍历一定是 { 左子树中的节点集合 },root,{ 右子树中的节点集合 },前序遍历的作用就是找到每颗子树的root位置。算法1输入:前序遍历,中转载 2017-11-14 18:00:59 · 458 阅读 · 0 评论 -
用邻接表存储有向图实现的dfs和bfs
#include#include#define MAX 20using namespace std;class ArcNode {public: int adjvex; //存储弧的终止位置 ArcNode*nextarc;};class VNode {public: char data; //结点信息 ArcNode*firsarc;//第一个弧边的地址};//定义原创 2017-11-30 12:51:06 · 3891 阅读 · 0 评论 -
用Prim和Kruskal算法实现图的最小生成树
1.最小生成树的概念 最小生成树 由一个网络生成的各边的权数总和最小的生成树,记为MST(Minimum Cost Spanning Tree)。MST性质 设N=(V,{E})是一个连通的网络,U是V的真子集,若边(u,v)[uÎU,vÎV-U]是E中所有一个端点在U内,一个端点不在U内的边中权值最小的一条边(轻边),则一定存在G的一棵生成树包括此边。原创 2017-11-30 13:04:30 · 1154 阅读 · 0 评论 -
解决ege中使用线程出现的屏闪问题
ege在使用线程后,会出现绘图界面不稳定的情况解决办法:在循环打印函数里(比如while(1))while(1){ static PIMAGE page = NULL;//绘图层2,用于刷新画面 if (page == NULL) { page = newimage(SCREENWIDTH, SCREENHEIGHT); setbkcolor(WHITE); } cleardevic...原创 2018-05-27 10:04:43 · 1090 阅读 · 0 评论 -
最小生成树的Prim和Kruskal的c++语言实现-(北邮算法与分析作业题)
1.题目:最小生成树从昆明LTE网络中,选取部分基站,计算基站间的距离,在部分基站间引入边,得到1)22个基站顶点组成的图2)42个基站顶点组成的图最小生成树生成这2个图的最小生成树要求:采用K算法,或P算法;给出最小生成树的成本/代价/耗费cost做图,呈现出最小生成树, 可以在原图上,用红色、粗线条,标记最小生成树的边---------------------------------...原创 2018-06-15 16:01:01 · 542 阅读 · 0 评论