一些图论相关算法的学习研究和C#版演示程序
2009-12-14 03:59
399 查看
前段时间学习图论相关的算法,就做了一个C#版的演示程序,这个程序涉及到了如下算法:
深度优先搜索遍历(Depth First Search),
广度优先搜索遍历(Breath Frist Search),
最小生成树(Minimum Spanning Tree),
针对所有端点的Dijsktra最短路径搜索(Dijsktra Path),
针对特定端点的Dijsktra最短路径搜索(Dijsktra Path Single),
还有一些未完成的算法,如欧拉图,一笔画之类的,我会找时间将其也实现上去。
大家可以下载源代码并编译执行(基于.net 2.0)。
这里是程序界面截图:
通过设定Vertex Count(顶点个数)和Edge Ratio(值越大端点之间用边连接的机率越大)可以生成各种不同复杂度的无向图。界面右边有所生成的图的邻接矩阵显示。
图的端点是可以拖动的。大家可以通过拖动这些端点来调整出不同的图来试验算法。
照例上传一些算法演示范例动画:
从端点A开始的深度优先遍历
从端点A开始的广度优先遍历
从端点A开始的最小生成树
从端点A开始通向所有端点的最短路径(Dijsktra算法)
从端点A开始端点F的最短路径(Dijsktra算法)
深度优先搜索遍历(Depth First Search),
广度优先搜索遍历(Breath Frist Search),
最小生成树(Minimum Spanning Tree),
针对所有端点的Dijsktra最短路径搜索(Dijsktra Path),
针对特定端点的Dijsktra最短路径搜索(Dijsktra Path Single),
还有一些未完成的算法,如欧拉图,一笔画之类的,我会找时间将其也实现上去。
大家可以下载源代码并编译执行(基于.net 2.0)。
这里是程序界面截图:
通过设定Vertex Count(顶点个数)和Edge Ratio(值越大端点之间用边连接的机率越大)可以生成各种不同复杂度的无向图。界面右边有所生成的图的邻接矩阵显示。
图的端点是可以拖动的。大家可以通过拖动这些端点来调整出不同的图来试验算法。
照例上传一些算法演示范例动画:
从端点A开始的深度优先遍历
从端点A开始的广度优先遍历
从端点A开始的最小生成树
从端点A开始通向所有端点的最短路径(Dijsktra算法)
从端点A开始端点F的最短路径(Dijsktra算法)
相关文章推荐
- 汉诺塔的一些研究以及C#版演示程序
- Visual Studio 2017中使用正则修改部分内容 如何使用ILAsm与ILDasm修改.Net exe(dll)文件 C#学习-图解教程(1):格式化数字字符串 小程序开发之图片转Base64(C#、.Net) jquery遍历table为每一个单元格取值及赋值 。net加密解密相关方法 .net关于坐标之间一些简单操作
- 搜索引擎研究---网络蜘蛛程序算法相关资料 Part VI (共5部分)
- 搜索引擎研究---网络蜘蛛程序算法相关资料 Part V (共5部分)
- Asp.net/C#相关一些学习资料, 非常好!!! 进来看一下.
- 留学生作业代写 编程代写 有偿代写 python matlab数学建模 机器学习 深度学习 c# c++ 数学 算法 论文程序代写
- 搜索引擎研究---网络蜘蛛程序算法相关资料 Part I (共5部分)
- 搜索引擎研究---网络蜘蛛程序算法相关资料
- 搜索引擎研究---网络蜘蛛程序算法相关资料 Part II (共5部分)
- 搜索引擎研究---网络蜘蛛程序算法相关资料
- 计算机图形学算法演示程序(c#开源)
- 算法研究学习一(用C和C#实现)
- 搜索引擎研究---网络蜘蛛程序算法相关资料 Part III (共5部分)
- 搜索引擎研究---网络蜘蛛程序算法相关资料
- 算法学习--图论
- 数据结构之图论算法伪代码(伪代码是一种思想可对照伪代码的实用代码学习算法设计)
- C# 程序发布/部署相关
- 图论学习之二分图(一)二分图的概念及基本算法
- 用正则表达式过滤脚本(js)的一些研究(asp.net + C#)
- C# 学习笔记2 C#底层的一些命令运行