for(int i=0;i<k;i++) {
int numero2 = (int) (Math.random() * k);
int numero3 = (int) (Math.random() * k);
g.addEdge(numero2, numero3 );
}
提前谢了。特别是如果有一个答案,甚至更好,一个很好的答案来回答我的问题。
完整的代码是:
import java.util.*;
import java.util.Random;
class Graph{
class Edge{
int v;
public Edge(int v){
this.v=v;
}
@Override
public String toString(){
return "("+v+")";
}
}
List<Edge> G[];
public Graph(int n){
G=new LinkedList[n];
for(int i=0;i<G.length;i++)
G[i]=new LinkedList<Edge>();
}
void addEdge(int u,int v){
G[u].add(0,new Edge(v));
}
@Override
public String toString(){
String result="";
for(int i=0;i<G.length;i++)
result+=i+"=>"+G[i]+"\n";
return result;
}
}
public class Graph01 {
public static void main(String[] args) {
int k = (int) (Math.random() * 5) + 5;
Graph g;
g = new Graph(k);
for(int i=0;i<k;i++) {
int numero2 = (int) (Math.random() * k);
int numero3 = (int) (Math.random() * k);
g.addEdge(numero2, numero3 );
}
System.out.println(g);
}
}
有三种可能:
n
输出边,其中n
符合您的要求。在选项3中,如果你的边不是定向的,或者你想避免距离-1循环(A->B和B->a),这个问题稍微复杂一点,但仍然很容易解决。
我正在尝试编写一个算法,该算法将重建Floyd-Warshall算法中所有顶点对之间的最短路径(如果有,则为最短路径绑定多条路径)。我从这个问题中得到了一些提示:https://stackoverflow.com/a/11371588/7447425 基于此,我修改了Floyd Warshall算法: 该图是边缘列表的形式,例如: 到目前为止,一切似乎都很顺利。 对于路径重建, 但这不管用。那么,
考虑上图。我想要一个小精灵查询,返回所有在它们之间有多条边的节点,如图所示。 该图是使用neo4j cypher查询获得的:MATCH(d:dest)-[r]-(n:cust),其中d,n,count(r)作为常用返回d,n,按常用描述极限5排序 例如:在RITUPRAKA…和Asia之间有8条多条边,因此查询返回了2个节点和边,对于其他节点也是如此。 注意:图中有其他节点,它们之间只有一条边,这
我在R中使用igraph库创建了一个无向鄂尔多斯-仁义网络,它有100个节点,p=0.2: 我还创建了两个空网络: 我根据生成的随机数(0-1之间),从原始网络向net1和net2添加边。如果该随机数在0-0.1之间,则边进入net1,如果在0.1-0.9之间,则边进入net2,如果在0.9-1之间,则边同时进入net1和net2。 下面是我的代码,可以查看原始网络中的所有边缘,并将它们添加到ne
OrientDB数据库不仅是一个文档数据库,也是一个图形数据库。 和等新概念用于以图形的形式存储数据。 它在顶点上应用多态性。 的基类是. 在本章中,您将学习如何创建顶点来存储图形数据。 以下语句是创建顶点()命令的基本语法。 以下是有关上述语法中选项的详细信息。 - 定义顶点所属的类。 - 定义存储顶点的集群。 - 定义要设置的字段。 - 定义为字段设置的表达式。 示例 尝试下面的示例来了解如何
我发现,当从DB或任何格式将数据导入到图中时,我需要使用这些键创建边,这些键已经是顶点中的属性。 我如何通过使用这些我已经摄入到图中的FK遍历所有顶点来创建边? 我需要这是可编程的,因为我有很多需要这一步的数据。目前我正在使用Gremlin。Net,因为我使用的大部分代码已经是C# 示例:假设我吞下了一些客户 g.add客户,c_id,product_id 和一些产品 g、 addV(“产品”)。
我有一个加权无向图。给定该图中的两个顶点之间没有路径,我想通过向图中添加边来创建它们之间的路径,尽可能少地增加图的总权重。是否有已知的算法来确定要添加哪些边? 一个类似的问题是,如果我有一个国家道路系统的图表,其中有两个城市彼此无法通过道路进入,我想修建一组最短的新道路来连接它们。它们之间可能有其他城市与两者都没有联系,如果它们存在,我想利用它们。 这里有一个小例子;红色和绿色是我要连接的顶点,黑