我的数据存储在土卫六图表数据库中。我试图找到两个顶点(v1和v2)之间的最短路径。目前,我有以下代码:
final Vertex v1 = titanGraph.getVertices("nodeId", "110969224").iterator().next();
final Vertex v2 = titanGraph.getVertices("nodeId", "141396276").iterator().next();
System.out.println(v2);
final Gre
图形数据库的新手,并尝试使用Neo4j博客中的示例在Java语言中创建ACL:
问题出在提供的ruby代码中:
#Here's our function to check the distance between principals (and to see if they're on the same path at all).
def depth_of_principal( principal, reference_principal )
result = reference_principal.outgoing( :IS_MEMBER_OF_GROUP ).dept
我已经对Neo4j 1.9.M03进行了一段时间的评估,并且已经达到了我意想不到的程度。
我有一个14万个顶点的图。我也有三个类别的边缘,让我们称之为父亲,母亲和丈夫。每班约有80,000条边。没有属性,也没有索引。顶点存储大小约为1.3MB,边缘存储约为8MB。
数据来源于Server,从SQL迁移到Neo4j的质量是正确的。SQL最短路径存储过程已为数十个顶点对运行,因此已知最短路径距离和路径。
最短路径查询是Cypher:START one=node(0), two=node(1234) MATCH p = shortestPath(one-[*..1000]-two) RETURN p
我遇到了一个问题,我们需要使用最短路径来计算朋友之间的分离度。我想到了dfs方法,然后从每一个朋友那里,我必须创建一个新的列表来计算出最小的列表。我正在考虑Trie数据结构来保存朋友和他们的朋友,但是有没有任何简单的方法来解决它,任何指导都是感激的。 这是我得到的java类。 import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
/**
* Implement the function in this class that will
*/
public class FriendFi
我试图使用这个逻辑来理解是怎么回事,但我很困惑它在哪里说b、c、d……
有人能解释一下这是怎么回事吗?
谢谢(标记为java,因为这是向我们演示的语言,所以如果有人发布了任何代码示例,他们可以看到它是用该语言编写的)
代码如下:
for (k = 0; k < n; ++k) {
for (i = 0; i < n; ++i)
for (j = 0; j < n; ++j)
/* If i and j are different nodes and if
the paths between i a
我意识到这个问题已经被问了好几次了,但我只是想知道如何把它放在上下文中。我正在尝试找出如何使用广度优先搜索在迷宫中找到最短路径。我得到了一个创建迷宫的程序,我正在试图找到通过迷宫的最短路径。
package solver;
import java.awt.Point;
import java.util.LinkedList;
import java.util.List;
import java.util.Queue;
public class BreadthFirstSearch extends AbstractSolver {
@Override
public Li
有人能帮我吗?我有点迷路了。嗯,我肯定不是Java方面的专家。
我需要编写java代码算法来计算无权无向图(网络)中的平均最短路径。这个图是一个由100个节点组成的网格(10×10),它要搜索网络中所有对(节点)之间的所有最短路径,然后除以最短路径数,得到一条平均的喷出路径。通过修改Dijstra的算法,这是可行的吗?有人能告诉我怎么做吗?
迪克斯特拉(氏)
public static void dijkstra(int s, int[][] A, int N, int[] d) {
int mini; int[] visit = new int[N];
for (int i
如何找到节点在无向图中,从该节点到所有其他节点的最小距离之和是最小的。我已经用dfs遍历了这个图。
我已经找到了到源节点的最小距离。策略是什么?
我的尝试-
import java.util.LinkedList;
import java.util.Scanner;
class Edge {
int from;
int to;
long wt;
Edge(int a, int b, long w)
{
from = a;
to = b;
wt = w;
}
}
class Graph {
使用下面的代码,我试图找到第二条最短路径/第k条最短路径.
// Run Dijkstra's algorithm on given graph
public static void shortestPath(GraphModel graph, int source, int destination, int numberOfVertices)
{
// create min heap and push source node having distance 0
PriorityQueue<NodeModel> minHeap
我想要做的是将我创建的图传播给所有的顶点,然后每个顶点都可以在这个图上进行自己的计算,以计算相对于自身作为源顶点的最短路径?当我尝试访问compute方法中的图形时,下面的代码总是提供给我:java.lang.NullPointerException
val result=graph.pregel(graph,Int.MaxValue,EdgeDirection.Out)((id, value, msg) => compute(msg,id),triplet => Iterator.empty,(a, b) => a)
我在实现DijkstraAlgorithm.My代码时遇到的问题如下
class DijkstraAlgorithmSet {
private int distances[];
private java.util.Set<Integer> settled;
private java.util.Set<Integer> unsettled;
private int number_of_nodes;
int source = 0;
int min;
int node = 0;
public Dijkstra
给定G=(V,E),即每条边都有这三种颜色(绿色,红色,蓝色)中的一种。如果一条路径包含所有三种颜色,我们称其为“有色路径”。
Input: graph G(V,E),weight function w:E->Q+ , colored edges and vertices s .
output: algorithm that finds for every vertices v, a shortest path from s
that is Colored path
我的解决方案是遍历该图,并为每个顶点计算路径具有的颜色数量。创建名为G1、G2、G
我正在用Java编写一个方法来找到图中两个节点之间的最短路径。参数如下
数组列表:包含边缘源节点的索引的对象和边缘index1的目标节点的索引:第一个索引index2:我希望找到到.的最短路径的索引
我编写了以下代码:
public static String shortestDistance(List<edge> edges, int index1, int index2) {
String shortest = "";
for (int i = 0; i < edges.size(); i++) {
我正在学习different的代码,我已经准备了下面的代码,所依据的是与different略有不同的想法。现在,在许多网站上,我看到了使用提取min和布尔数组访问的边缘。我没有用过,我的答案也是正确的。是否有任何测试用例或场景让我的algo无法工作。
import java.util.*;
class ShortestPath2 {
static int Ar[][];
static int dist[];
static int nodes;
public static void djikstra(int sou