????? JWFD開源工作流-矩陣引擎設(shè)計-遍歷算法運行測試
???? 使用下面的流程圖-生成式矩陣和參數(shù)表,編寫遍歷排序算法,運行結(jié)果如下(test004.mtx,test004.parm)
0 1 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 1
1 0 0 1 0 1 1 0 1 0
0 1 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0
下標:(8,1): 節(jié)點標簽:(node8,node1): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點
下標:(1,9): 節(jié)點標簽:(node1,node9): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點
下標:(5,1): 節(jié)點標簽:(node5,node1): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點
下標:(6,1): 節(jié)點標簽:(node6,node1): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點
下標:(2,0): 節(jié)點標簽:(node2,node0): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點
下標:(0,1): 節(jié)點標簽:(node0,node1): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點
下標:(7,2): 節(jié)點標簽:(node7,node2): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:起始點
下標:(3,1): 節(jié)點標簽:(node3,node1): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點
下標:(2,6): 節(jié)點標簽:(node2,node6): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點
下標:(2,5): 節(jié)點標簽:(node2,node5): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點
下標:(2,8): 節(jié)點標簽:(node2,node8): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點
下標:(2,3): 節(jié)點標簽:(node2,node3): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點
下標:(9,4): 節(jié)點標簽:(node9,node4): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:普通點文章來源:http://www.zghlxwxcb.cn/news/detail-735372.html
?
?遍歷算法函數(shù)運行輸出結(jié)果?? ?
?run:
矩陣參數(shù)表遍歷算法啟動,輸出:
(node7,node2)
起始點的下一個鄰接點是:node2
下一個鄰接點是:node0
再下一個鄰接點是:node1
下一個鄰接點是:node6
再下一個鄰接點是:node1
下一個鄰接點是:node5
再下一個鄰接點是:node1
下一個鄰接點是:node8
再下一個鄰接點是:node1
下一個鄰接點是:node3
再下一個鄰接點是:node1
成功構(gòu)建 (總時間: 0 秒)文章來源地址http://www.zghlxwxcb.cn/news/detail-735372.html
矩陣引擎-遍歷算法代碼如下
參數(shù)表遍歷算法,矩陣引擎的一個模塊,排序過程
使用遞歸算法,嵌套函數(shù)模塊
必須使用遞歸模式,2個嵌套循環(huán)無法遍歷排序完成一個復(fù)雜的矩陣參數(shù)表
*/
public void ParamFileOutputValue(String paramfile) {
String s = "";
String sp = "";
String ssp = "";
List<String> list = new ArrayList<String>();
int p = 0;
int k = 0;
//這個地方要修改為整個參數(shù)表的最大行數(shù),而不是起始點行數(shù)!!
s = this.ParamlineScanner(paramfile).substring(1, 2);
p = Integer.parseInt(s);
k = ParamlineScanOutput(paramfile);
// System.out.println(ParamlineScanOutput(paramfile));
// System.out.println(this.ParamlineScanner(paramfile).substring(4, 7));
System.out.println("矩陣參數(shù)表遍歷算法啟動,輸出:");
if (this.ParamlineScanner(paramfile).substring(4, 7).equals("起始點")) {
System.out.println(this.ParamSubscriptScanner(paramfile).get(p - 1).toString());
System.out.println("起始點的下一個鄰接點是:" + this.ParamSubscriptScanner(paramfile).get(p - 1).toString().substring(7, 12));
sp = this.ParamSubscriptScanner(paramfile).get(p - 1).toString().substring(7, 12);
// K1 = sp;
for (int i = 0; i <= k - 1; i++) {
//輸出所有的節(jié)點標簽
//進行對比,如何進行全部參數(shù)的對比,并輸出?
if (this.ParamSubscriptScanner(paramfile).get(i).toString().substring(1, 6).equals(sp)) {
//輸出下一批鄰接點,繼續(xù)進行搜索和對比,直到達到最后一個節(jié)點
System.out.println("下一個鄰接點是:" + this.ParamSubscriptScanner(paramfile).get(i).toString().substring(7, 12));
ssp = this.ParamSubscriptScanner(paramfile).get(i).toString().substring(7, 12);
for (int j = 0; j < k - 1; j++) {
if (this.ParamSubscriptScanner(paramfile).get(j).toString().substring(1, 6).equals(ssp)) {
System.out.println("再下一個鄰接點是:" + this.ParamSubscriptScanner(paramfile).get(j).toString().substring(7, 12));
}
}
}
}
}
// 輸出這行的節(jié)點標簽內(nèi)容:(node7,node6)的node7的下一個鄰接點node6
/*
下標:(7,6): 節(jié)點標簽:(node7,node6): 節(jié)點狀態(tài):(0,0): 節(jié)點標志:起始點
取出substring node6,作為對比字符串,搜索所有的參數(shù)表行數(shù)據(jù),進行對比,輸出下一個鄰接點
*/
}
到了這里,關(guān)于JWFD開源工作流-矩陣引擎設(shè)計-遍歷排序算法運行測試的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!