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

息烽做网站公司有哪些深圳市网络营销公司

息烽做网站公司有哪些,深圳市网络营销公司,老酒街 wordpress,专业的网站开发建访本文介绍利用Java的第三方API JUNG 计算图中#xff1a; closeness centrality#xff1b;// 图中某节点的 接近中心性/亲密中心性 betweenness centrality#xff1b;// 图中某节点的 中介中心性/介数中心性 distance; // 图中两节点的最短距离 eccentricity; // 图中某节…本文介绍利用Java的第三方API JUNG 计算图中 closeness centrality// 图中某节点的 接近中心性/亲密中心性 betweenness centrality// 图中某节点的 中介中心性/介数中心性 distance;  // 图中两节点的最短距离 eccentricity;  // 图中某节点的 偏心率/离心率 radius;   //  半径 diameter.  // 直径     JUNG 下载地址   https://sourceforge.net/projects/jung/files/   JUNG api参考文档 http://jung.sourceforge.net/doc/api/overview-summary.html   预处理 JUNG 中的计算方法基于JUNG内置图类本文基于自定义图计算图属性故需要先将自定义图转存为JUNG图对象。 JUNG 提供 泛型接口进行转化或创建时利用自定义边类型与节点类型即可。 以以下代码为例 /*** 将graph.Graph 转为 JUNG.graph.Graph 过滤掉超边.* * param g - 基于 graph.Graph* return edu.uci.ics.jung.graph.Graph*/public static edu.uci.ics.jung.graph.GraphVertex, Edge graphTransform(GraphVertex, Edge g) {edu.uci.ics.jung.graph.GraphVertex, Edge graph new SparseGraph(); // 稀疏图for (Vertex vertex : g.vertices()) {graph.addVertex(vertex);}for (Edge edge : g.edges()) {if (edge.sourceVertices().size() 0) {// 超边continue;}if (edge.sourceVertices().size() 1) {// 有向边graph.addEdge(edge, getVertex(edge.sourceVertices()),getVertex(edge.targetVertices()), EdgeType.DIRECTED);} else {// 无向边Vertex existV getVertex(edge.vertices());graph.addEdge(edge, existV, getVertexExcept(edge.vertices(), existV),EdgeType.UNDIRECTED);}}return graph;} 如此获得一个jung 图对象。       Closeness Centrality   /*** 计算图g中节点v的 closeness centrality.* * param g - to be calculate.* param v - central vertex.* return closeness centrality.*/public static double closenessCentrality(GraphVertex, Edge g, Vertex v) {edu.uci.ics.jung.graph.GraphVertex, Edge graph helper.Transformer.graphTransform(g);// 新建计算对象传入图与待计算节点。ClosenessCentralityVertex, Edge closenessCentrality new ClosenessCentrality(graph, t);// 获得 closeness centrality.double degree closenessCentrality.getVertexScore(v);return degree;}       Betweenness Centrality   /*** 计算图g中节点v的 betweenness centrality.* * param g - to be calculate.* param v - central vertex. ** return betweeness centrality.*/public static double betweennessCentrality(GraphVertex, Edge g, Vertex v) {edu.uci.ics.jung.graph.GraphVertex, Edge graph helper.Transformer.graphTransform(g);// 新建计算对象传入图与待计算节点。BetweennessCentralityVertex, Edge betweennessCentrality new BetweennessCentrality(graph, t);// 获得 betweenness centrality.double degree betweennessCentrality.getVertexScore(v);return degree;}       Distance (Dijkstra算法)     /*** 节点start和end之间的最短距离需要区分有向图和无向图.* * param g - to be calculated in.* param start - from.* param end - to.* return distance.*/public static double distance(GraphVertex, Edge g, Vertex start, Vertex end) {edu.uci.ics.jung.graph.GraphVertex, Edge graph helper.Transformer.graphTransform(g);DijkstraShortestPathVertex, Edge dijkstraShortestPath new DijkstraShortestPath(graph, t);// 计算由start到end的最短路径返回值为路径上的边组ListEdge path dijkstraShortestPath.getPath(start, end);// 统计总权值double distance 0;for (Edge edge : path) {distance edge.getWeight();}return distance;}             Eccentricity 在图论中顶点的偏心率eccentricity用来表示连接图中的顶点到图中其它顶点之间的最大距离。   /*** 偏心率.* * param g - to be calculated.* param v - central vertex.* return eccentricity of the specific vertex.*/public static double eccentricity(GraphVertex, Edge g, Vertex v) {double eccentricity 0;for (Vertex end : g.vertices()) {// 跳过 v 自身if (v.equals(end)) {continue;}// 计算 distance 并记录最远距离double distance distance(g, v, end);if (distance eccentricity) {eccentricity distance;}}return eccentricity;}           Radius 在图论中半径radius表示图的所有点的偏心率的最小值。   /*** 半径即偏心率的最小值.* * param g - to be calculated.* return*/public static double radius(GraphVertex, Edge g) {double radius 2 ^ 10; // 初始极大值// 遍历节点计算偏心率记录偏心率最小值for (Vertex vertex : g.vertices()) {double distance eccentricity(g, vertex);if (radius distance distance 0) {radius distance;}}return radius;}           Diameter 在图论中图的直径diameter表示取遍图的所有顶点得到的偏心率的最大值。     /*** 直径即偏心率的最大值.* * param g - to be calculated.* return*/public static double diameter(GraphVertex, Edge g) {double diameter 0;// 遍历节点计算偏心率记录偏心率最大值for (Vertex vertex : g.vertices()) {double distance eccentricity(g, vertex);if (diameter distance) {diameter distance;}}return diameter;}        转载于:https://www.cnblogs.com/standingby/p/9148165.html
http://wiki.neutronadmin.com/news/346994/

相关文章:

  • 南城网站建设多少钱湖北省建设信息网站
  • 南宁网站建设专家网站设计需要哪些
  • 企业网站的首页设计模板wordpress图片域名
  • 网站相对路径和绝对路径做新得网站可以换到原来得域名嘛
  • 做相册的网站wordpress衔接出错
  • 龙岗网站建设哪家便宜乐山市住房和城乡规划建设局网站
  • 合肥做网站的企业济南网站技术
  • 运营网站开发工作滨州做网站建设的公司
  • 奉贤网站建设网站制作银川做网站最好的公司有哪些
  • 做企业网站推广多少钱服务器可以自己的网站吗
  • 云南建设厅查证网站合肥网站排名推广
  • 机关公文写作网站房地产网站建设公司
  • 购物网站模板下载精准大数据营销是什么
  • 哪两个数字域名是做医疗信息网站的有空间有域名怎么做网站
  • 网站开发过时了湖南刚刚发生的大事件
  • 网站广告代码怎么添加常州外贸网站设计
  • 可以发广告的100个网站圣都装饰
  • thinkphp旅游网站源码房屋装修设计图片欣赏
  • 网站建设按钮外贸推广app
  • dede重工蓝色企业免费网站模板没有营业执照 怎么做网站
  • 网站架构策划重庆百度推广seo
  • 网站建设的团队分工企业查询软件免费
  • 鹰潭市城乡建设局网站代理服务器国外
  • 南京网站建设q润洽网络做网站的开发工具
  • 网站排名对比wordpress投稿管理系统
  • 旅游网站功能现在可以去贵阳吗
  • 怎么在微信做企业网站广西旅游 网站建设
  • 苏州网站建设优化关键词seo排名优化
  • 江阴网站建设公司坑梓网站建设市场
  • h5case 网站外贸公司网站空间