📄 prim.java
字号:
package org.osu.ogsa.stream.util;import java.util.*;import java.io.*;import java.net.URL;import java.net.URI;import javax.swing.tree.*;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;public class Prim extends GraphAlgorithm{ static Log log = LogFactory.getLog(Prim.class.getName()); synchronized void updateDist() { /* replace labels */ int i,j; int fake_len; j = v[u].delta_plus; while (j>=0) { i = e[j].rndd_minus; fake_len = getFakeLen(j); if ((d[i].succ>=-2)&&((d[i].dist<0)|| (d[i].dist>fake_len))) { if (d[i].dist<0) append_pre_s(i); d[i].dist = fake_len; d[i].real_dist = e[j].len; d[i].prev = u; //label } j = e[j].delta_plus; } if (!isdigraph) { j = v[u].delta_minus; while (j>=0) { fake_len = getFakeLen(j); i = e[j].rndd_plus; if ((d[i].succ>=-2)&&((d[i].dist<0)|| (d[i].dist>e[j].len))) { if (d[i].dist<0) append_pre_s(i); d[i].dist = fake_len; d[i].real_dist = e[j].len; d[i].prev = u; // label } j = e[j].delta_minus; } } d[u].succ = COMPLETION_LABEL; } public static void main(String args[] ) { if(args.length < 1) { System.out.println("Usage: Prim <config file> [starting vertex] [dest string]"); System.exit(-1); } String configFile = args[0]; Prim p = new Prim(); p.init(configFile); if(args.length == 1) p.calculateKeyPaths(0); else p.calculateKeyPaths(Integer.parseInt(args[1])); if(args.length <= 2) p.printPaths(); else { DefaultMutableTreeNode root = p.constructPath(args[2]); for (Enumeration e = root.breadthFirstEnumeration() ; e.hasMoreElements() ;) { DefaultMutableTreeNode treenode = (DefaultMutableTreeNode)(e.nextElement()); log.debug(((DynamicEnv)treenode.getUserObject()).name); } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -