`
dlzjp123
  • 浏览: 23812 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

Prime(最小生成树算法)的java实现

阅读更多
以后打算用这个博客作为平台,记录自己的一些东西,希望自己在这两年半的时间有一些成长。
public int primeValue(int[][] a, int n) {
int sum = 0;
int[] lowcost = new int[n + 1];//边的最小值
int[] closest = new int[n + 1];//存储最近节点
boolean[] visit = new boolean[n + 1];
visit[1] = true;//visit为true则说明该节点已经被访问
for(int i = 2; i <= n; i++) {
lowcost[i] = a[1][i];
closest[i] = 1;
visit[i] = false;
}
for(int i = 1; i < n; i++) {
int min = Integer.MAX_VALUE;
int j = 1;
for (int k = 2; k <= n; k++)
if ((lowcost[k] < min) && (!visit[k])) {
min = lowcost[k];
j = k;
}
sum += min;//累加最小生成树的边权值s
visit[j] = true;
for(int k = 2; k <= n; k++) {
if (a[j][k] < lowcost[k] && !visit[k]) {
lowcost[k] = a[j][k];
closest[k] = j;
}
}
}
return sum;
}
0
0
分享到:
评论

相关推荐

    数据结构实验报告9-图-Prim算法求最小生成树-实验内容与要求.docx

    根据给定的文件信息,本篇内容将围绕“数据结构实验报告9-图-Prim算法求最小生成树”展开,具体涉及的知识点包括Prim算法的基本原理及其应用、图的邻接矩阵存储结构的设计与实现、最小生成树的概念及求解过程、以及...

    最小生成树的算法实现

    //最小生成树的kruskal的算法 #include "stdafx.h" #include #include #include using namespace std; //int maxint=mar_maxint; class BinaryTree; class EdgeNode//边的数据结构 { private: int u,v;//边所在的...

    最小生成树的prime算法

    最小生成树的prime算法(MATLAB)

    Prim算法最小生成树(C语言)

    输入数据: 7 11 A B 7 A D 5 B C 8 B D 9 B E 7 C E 5 D E 15 D F 6 E F 8 E G 9 F G 11 输出: A - D : 5 D - F : 6 A - B : 7 B - E : 7 E - C : 5 E - G : 9 Total:39

    基于邻接矩阵存储的图的最小生成树的Prime算法

    基于邻接矩阵存储的图的最小生成树的Prime算法,对学习C++和数据结构很有帮助

    Prime最小生成树源代码

    Prime 算法写的一个最小生成树的C++程序

    最小生成树prime算法

    数据结构上最小生成树的prime算法,源代码是用c语言实现的,易于大家的理解。

    C#实现最小生成树普里姆算法Prime

    总之,通过研究这个C#实现的普里姆算法,你不仅能深入理解最小生成树的概念,还能掌握如何用C#编写图算法,这对于进一步学习图论、数据结构以及算法优化都有极大的帮助。同时,这也是提升你的编程技能和问题解决能力...

    prime-tree.rar_tree生成网络图_普鲁姆算法_普鲁母算法_最小生成树_最小生成树 prim

    在提供的压缩包中,`prime-tree.cpp`很可能是一个C++程序,实现了普鲁姆算法来生成最小生成树。这个程序可能包含了数据结构的定义,如邻接矩阵或邻接表,以及算法的具体逻辑。而`www.pudn.com.txt`可能是源代码的...

    随机生成网络,采用prime算法,生成最小生成树Matlab.zip

    代码可能包括定义图、实现Prime算法逻辑以及输出最小生成树的函数。通过运行这个脚本,用户可以生成随机网络,然后找到并打印出最小生成树的边。 需要注意的是,虽然标签中提到了"C#",但这里讨论的内容主要与...

    最小生成树c++实现

    Prim算法是一种贪心算法,它从一个起始节点开始,逐步构建最小生成树,每次添加一条与已选节点集合形成最小权值边的边。步骤如下: 1. 选择一个起始节点,将其加入最小生成树。 2. 找到当前未被包含在最小生成树中...

    基于Prim算法实现的最小生成树

    前置知识:最小生成树名词概念、最小生成树--Prime算法的基本概念、邻接矩阵基本概念 重点:书中P174 中 图 7.16 与 图 7.17 极其重要,代码中的注释和举例都是基于它们要充分理解 代码阅读与调试 代码调试时间...

    图的最小生成树Prim算法C++面向对象实现.doc

    Prim算法是求解最小生成树的一种经典算法,由Vojtěch Jarník、Karl Menger和Joseph Kruskal等人独立提出,但以Ernesto Prim的名字最为人所知。 Prim算法的基本思想是从图中任意一个节点开始,逐步添加边,使得...

    用普里姆(Prim)算法构造最小生成树

    普里姆(Prim)算法是图论中的一个经典算法,用于在加权无向图中找到一棵连接所有顶点的最小生成树。最小生成树是一棵包含图中所有顶点的树,其边的权重之和尽可能小。这个算法特别适用于解决网络连接问题,如城市之间...

    C++语言程序 最小代价生成树(kruskal算法)

    在提供的代码片段中,可以看出作者用C++实现了Kruskal算法来寻找加权无向图的最小生成树。接下来将详细介绍各个部分的功能与实现细节。 #### 数据结构定义 1. **ArcCell 结构体**: 定义了边的信息。 ```cpp ...

    数据结构之最小生成树

    连通网的最小生成树的prime和Kruskal算法,完整的测试代码,包括图的基本操作代码(详见:http://download.csdn.net/detail/u013071074/7445893),包括两组测试数据。 prime和Kruskal算法介绍详见博文:...

    基于C语言实现最小生成树【100010887】

    (1)分别利用 Kriuskal 算法和 Prime 求网的最小生成树。 (2)实现教科书中定义的抽象数据类型,以此表示构造生成树过程中的连通分量。 (3)以图和文本两种形式输出生成树中各条边以及他们的权值。

    prime 算法 prime

    通过以上分析可以看出,所提供的代码示例主要实现了 Prim 算法用于构建最小生成树的过程。该算法适用于寻找无向图中的最小生成树问题,在网络设计等领域有着广泛的应用。理解 Prim 算法的核心思想及其具体实现细节...

Global site tag (gtag.js) - Google Analytics