kruskals 算法中的着色
Coloring in kruskals algorithm
我正在 Java 中实现 Kruskals 算法,但我无法弄清楚 best/smartest 跟踪访问顶点的方法是什么。我应该给它们上色还是只将顶点 属性 设置为 visited 或类似的东西?
I am implementing Kruskals algorithm in Java and i cannot figure out what would be the best/smartest way to track visited vertexes. Should i color them or just set vertex property to visited or something like that?
给它们着色和将它们设置为已访问是两件不同的事情。如果要将节点设置为已访问,可以使用标志数组(布尔数组):
boolean[] visited = new boolean[numNodes];
visited[currNodeIdx] = true;
如果您已经为节点创建了 class,只需更新属性:
class Node{
private boolean visited;
public void visited(boolean flag){
visited = flag;
}
}
//when updating the node
node.visited(true);
你的后端算法不应该依赖于你的表现层(例如颜色变化),而是,如果你想直观地显示访问过的节点,你可以根据节点的访问状态(而不是其他)设置颜色轮回)。
我正在 Java 中实现 Kruskals 算法,但我无法弄清楚 best/smartest 跟踪访问顶点的方法是什么。我应该给它们上色还是只将顶点 属性 设置为 visited 或类似的东西?
I am implementing Kruskals algorithm in Java and i cannot figure out what would be the best/smartest way to track visited vertexes. Should i color them or just set vertex property to visited or something like that?
给它们着色和将它们设置为已访问是两件不同的事情。如果要将节点设置为已访问,可以使用标志数组(布尔数组):
boolean[] visited = new boolean[numNodes];
visited[currNodeIdx] = true;
如果您已经为节点创建了 class,只需更新属性:
class Node{
private boolean visited;
public void visited(boolean flag){
visited = flag;
}
}
//when updating the node
node.visited(true);
你的后端算法不应该依赖于你的表现层(例如颜色变化),而是,如果你想直观地显示访问过的节点,你可以根据节点的访问状态(而不是其他)设置颜色轮回)。