当前位置: 首页 > news >正文

做网站的厉害还是黑网站的厉害百度影音在线电影

做网站的厉害还是黑网站的厉害,百度影音在线电影,46设计网站官网,文字图片制作器QuikGraph库介绍 项目地址:https://github.com/KeRNeLith/QuikGraph QuikGraph为.NET提供了通用的有向/无向图数据结构和算法。 QuikGraph提供了深度优先搜索、广度优先搜索、A*搜索、最短路径、k最短路径,最大流量、最小生成树等算法。 QuikGraph最初…

QuikGraph库介绍

项目地址:https://github.com/KeRNeLith/QuikGraph

QuikGraph为.NET提供了通用的有向/无向图数据结构和算法。
QuikGraph提供了深度优先搜索、广度优先搜索、A*搜索、最短路径、k最短路径,最大流量、最小生成树等算法。

QuikGraph最初由Jonathan “Peli” de Halleux于2003年创建,并命名为QuickGraph。随后更新为YC.QuickGraph。

这个版本的QuickGraph,改名为QuikGraph,是YC.QuickGraph的一个分支。我尝试使用现代C#开发(.NET Core)清理该库,将其作为一个干净的NuGet包提供。该计划旨在全面清理、修复原始库及其所有非核心部件的问题,并对其进行改进。

示例

  1. 创建一个.Net Framework4.7.2框架的项目。
  2. 在NuGet上搜索QuikGraph,并安装。
  3. 引入命名空间:
using QuikGraph.Algorithms.Observers;
using QuikGraph.Algorithms.ShortestPath;
using QuikGraph;
  1. 主要测试代码:
        public void DijkstraSimpleGraph(){// 创建邻接图,使用string类型作为顶点、边的唯一标识var graph = new AdjacencyGraph<string, Edge<string>>(true);// 添加顶点到图中graph.AddVertex("A");graph.AddVertex("B");graph.AddVertex("D");graph.AddVertex("C");graph.AddVertex("E");// 创建边var a_b = new Edge<string>("A", "B");var a_c = new Edge<string>("A", "C");var b_c = new Edge<string>("B", "C");var b_e = new Edge<string>("B", "E");var c_d = new Edge<string>("C", "D");var d_e = new Edge<string>("D", "E");var e_d = new Edge<string>("E", "D");// 添加边到图中graph.AddEdge(a_b);graph.AddEdge(a_c);graph.AddEdge(b_c);graph.AddEdge(c_d);graph.AddEdge(d_e);graph.AddEdge(b_e);graph.AddEdge(e_d);// 定义边的权重var weight = new Dictionary<Edge<string>, double>(graph.EdgeCount){[a_b] = 30,[a_c] = 15,[b_c] = 10,[b_e] = 20,[c_d] = 40,[d_e] = 4,[e_d] = 2,};// 创建算法,传入图和权重var algorithm = new DijkstraShortestPathAlgorithm<string, Edge<string>>(graph, e => weight[e]);// Attach a Vertex Predecessor Recorder Observer to give us the paths// 使用顶点前置记录器,以提供路径计算var predecessorObserver = new VertexPredecessorRecorderObserver<string, Edge<string>>();using (predecessorObserver.Attach(algorithm))//以顶点A为起点,运行算法algorithm.Compute("A");//打印A为起点,到各个点的距离foreach (var vertex in graph.Vertices){Trace.WriteLine($"A-{vertex} = {algorithm.GetDistance(vertex)}");}}

打印输出结果(打印了A为起点,到各个顶点的距离):

A-A = 0
A-B = 30
A-D = 52
A-C = 15
A-E = 50

图结构示意(可以人工检查输出结构的正确性):
在这里插入图片描述

http://www.dinnco.com/news/35465.html

相关文章:

  • wordpress 微站今日国内新闻大事20条
  • 做设计一般用的素材网站是什么意思设计个人网站
  • 手机wap网站 源码seo网站优化知识
  • 长沙专业网站制作新闻热点大事件
  • 政府类wap网站建设方案国内优秀个人网站欣赏
  • 网站建设的电话回访长春网站开发公司
  • 毕业答辩问题怎么做的这个网站厦门网络推广
  • 网站建设大全网络营销与直播电商怎么样
  • 贵州做网站找谁上海知名seo公司
  • 设计师交流网站电子商务网站建设与维护
  • 兄弟网络(西安网站建设制作公司)短视频营销
  • 模板网站可以自己买空间吗吗seoheuni
  • 自己建网站卖鞋青岛谷歌推广
  • 上海做网站的公司官网技能培训网
  • 网站301在哪里做青岛seo建站
  • 网站开发 方案 报价单培训机构营业执照如何办理
  • 合肥网站建设公司哪家好推广app赚钱的平台
  • 网站制作做网站培训推广 seo
  • 可以做哪些网站友情链接交换
  • 黑河网站建设查权重
  • 通辽做家教的网站标题优化seo
  • 枣庄手机网站建设电话百度推广找谁做
  • 江苏省工程造价信息网镇江seo优化
  • 云鼎大数据888元建站网络营销策划是什么
  • 东莞三合一网站制作郑州网站建设推广
  • 0网站建设的好坏可以依据的标准有宁波网站建设优化企业
  • 会网站建设好吗网络营销的优势有哪些?
  • 深圳前十网站建设公司日本域名注册网站
  • 做app网站设计seo排名优化推广
  • 怎么做网站门户写一篇软文1000字