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

神州顺利办深一做网站建设网站模板免费

神州顺利办深一做网站,建设网站模板免费,江苏网站备案流程,六安杂谈网戳蓝字“CSDN云计算”关注我们哦#xff01;作者 | 小灰来源 | 程序员小灰————— 第二天 —————————————————首先看看第一个例子#xff0c;有下面这样一个带权图#xff1a;它的最小生成树是什么样子呢#xff1f;下图绿色加粗的边可以把所有顶点连… 戳蓝字“CSDN云计算”关注我们哦作者 | 小灰来源 | 程序员小灰 —————  第二天  —————————————————首先看看第一个例子有下面这样一个带权图它的最小生成树是什么样子呢下图绿色加粗的边可以把所有顶点连接起来又保证了边的权值之和最小去掉那些多余的边该图的最小生成树如下下面我们再来看一个更加复杂的带权图同样道理下图绿色加粗的边可以把所有顶点连接起来又保证了边的权值之和最小去掉那些多余的边该图的最小生成树如下怎样铺设才能保证成本最低呢城市之间的交通网就像一个连通图我们并不需要在每两个城市之间都直接进行连接只需要一个最小生成树保证所有的城市都有铁路可以触达即可。Prim算法是如何工作的呢这个算法是以图的顶点为基础从一个初始顶点开始寻找触达其他顶点权值最小的边并把该顶点加入到已触达顶点的集合中。当全部顶点都加入到集合时算法的工作就完成了。Prim算法的本质是基于贪心算法。接下来说一说最小生成树的存储方式。我们最常见的树的存储方式是链式存储每一个节点包含若干孩子节点的指针每一个孩子节点又包含更多孩子节点的指针这样的存储结构很清晰但是也相对麻烦。为了便于操作我们的最小生成树用一维数组来表达数组下标所对应的元素代表该顶点在最小生成树当中的父亲节点。根节点没有父亲节点所以元素值是-1下面让我们来看一看算法的详细过程1.选择初始顶点加入到已触达顶点集合。2.从已触达顶点出发寻找到达新顶点的权值最小的边。显然从0到2的边权值最小把顶点2加入到已触达顶点集合Parents当中下标2对应的父节点是0。3.从已触达顶点出发寻找到达新顶点的权值最小的边。显然从2到4的边权值最小把顶点4加入到已触达顶点集合Parents当中下标4对应的父节点是2。4.从已触达顶点出发寻找到达新顶点的权值最小的边。显然从0到1的边权值最小把顶点1加入到已触达顶点集合Parents当中下标1对应的父节点是0。5.从已触达顶点出发寻找到达新顶点的权值最小的边。显然从1到3的边权值最小把顶点3加入到已触达顶点集合Parents当中下标3对应的父节点是1。这样一来所有顶点都加入到了已触达顶点集合而最小生成树就存储在Parents数组当中。final static int INF Integer.MAX_VALUE; static int INF Integer.MAX_VALUE;public static int[] prim(int[][] matrix){ static int[] prim(int[][] matrix){ ListInteger reachedVertexList new ArrayListInteger();ListInteger reachedVertexList new ArrayListInteger(); //选择顶点0为初始顶点放入已触达顶点集合中//选择顶点0为初始顶点放入已触达顶点集合中 reachedVertexList.add(0);.add(0); //创建最小生成树数组首元素设为-1//创建最小生成树数组首元素设为-1 int[] parents new int[matrix.length];int[] parents new int[matrix.length]; parents[0] -1;[0] -1; //边的权重//边的权重 int weight;int weight; //源顶点下标//源顶点下标 int fromIndex 0;int fromIndex 0; //目标顶点下标//目标顶点下标 int toIndex 0;int toIndex 0; while (reachedVertexList.size() matrix.length) {while (reachedVertexList.size() matrix.length) { weight INF; INF; //在已触达的顶点中寻找到达新顶点的最短边//在已触达的顶点中寻找到达新顶点的最短边 for (Integer vertexIndex : reachedVertexList) {for (Integer vertexIndex : reachedVertexList) { for (int i 0; i matrix.length; i) {for (int i 0; i matrix.length; i) { if (!reachedVertexList.contains(i)) {if (!reachedVertexList.contains(i)) { if (matrix[vertexIndex][i] weight) {if (matrix[vertexIndex][i] weight) { fromIndex vertexIndex; vertexIndex; toIndex i; i; weight matrix[vertexIndex][i]; matrix[vertexIndex][i]; }} }} }} }} //确定了权值最小的目标顶点放入已触达顶点集合//确定了权值最小的目标顶点放入已触达顶点集合 reachedVertexList.add(toIndex);.add(toIndex); //放入最小生成树的数组//放入最小生成树的数组 parents[toIndex] fromIndex;[toIndex] fromIndex; }} return parents;return parents;}public static void main(String[] args) { static void main(String[] args) { int[][] matrix new int[][]{int[][] matrix new int[][]{ {0, 4, 3, INF, INF},{0, 4, 3, INF, INF}, {4, 0, 8, 7, INF},{4, 0, 8, 7, INF}, {3, 8, 0, INF, 1},{3, 8, 0, INF, 1}, {INF, 7, INF, 0, 9},{INF, 7, INF, 0, 9}, {INF, INF, 1, 9, 0},{INF, INF, 1, 9, 0}, };}; int[] parents prim(matrix);int[] parents prim(matrix); System.out.println(Arrays.toString(parents));System.out.println(Arrays.toString(parents));}这段代码当中图的存储方式是邻接矩阵在main函数中作为测试用例的图和对应的邻接矩阵如下当然也可以使用邻接表来实现prim算法有兴趣的小伙伴可以尝试写一下代码。福利扫描添加小编微信备注“姓名公司职位”加入【云计算学习交流群】和志同道合的朋友们共同打卡学习推荐阅读屡试不爽的互联网架构三大马车2019年技术盘点容器篇四来自京东云的技术问答 | 程序员硬核评测《长安十二时辰》科技梗揭秘唐朝就能看到 5G 踪影天才程序员: 开发 CryptoKitties 难不难? 只需掌握这3点...教你如何用Python实现文本摘要模型附教程微软 CTO 韦青5G 与亚里士多德什么限制了GNN的能力首篇探究GNN普适性与局限性的论文出炉真香朕在看了
http://wiki.neutronadmin.com/news/114936/

相关文章:

  • ps怎么做网站模板城乡建设网站宁德
  • iis通过地址访问不了网站劳务派遣好还是外包好
  • 国外做建材的网站有哪些平邑建设银行网站
  • 雅安北京网站建设wordpress自定义打不开
  • 自媒体可做外链网站凡科 360免费建站
  • 杭州包装网站建设方案wordpress google font
  • 信息发布网站有哪些微信社区官网
  • 网站关键词优化排名外包单页站好做seo吗
  • 在哪建网站资源库建设网站
  • 沈阳微信网站制作微网站建设正规公司
  • 做网站和做软件一样吗iis新建网站
  • 网站框架搭建在线 网站建设
  • 商务酒店网站模板在线房产网
  • win8网站模板title:(网站建设)
  • vs网站开发用html设计一个网页代码
  • 上海高端网站建设公司惠州做网站好的公司
  • 做名宿比较好的网站做设计时可以参考的网站
  • 做一般的公司网站需要多少钱中国纪检监察报电子版2021
  • 上市公司专利查询网站管理员修改网站的参数会对网站的搜效果产生什么影响?
  • 住房和城乡建设部网站施工员证软件定制网
  • 网站制作建设需求英文wordpress SEO
  • 十大设计创意产品网站沈阳seo优化
  • 网站app免费制作软件广渠门网站建设
  • 如何打开国外网站网站开发一般过程
  • 做方案还找不到素材 这里有最全的设计网站兰州市门户网站
  • 有做足球裁判跑动数据的网站吗江西省宜春市建设局网站
  • 绩溪网站建设链接推广
  • 温州专业网站建设公司网店美工是什么
  • 广西建设科技与建筑节能协会网站做网站页面遇到的问题
  • 阿里云对象存储做静态网站网站建设费记在什么科目下