假设我有一个表示{“222/111”,“333/222”,“444/333”,“888/9999”,“777/999”}等路径的字符串数组。如何从上面的路径项构建树/图,这样我得到两个图:
444,333,222,111和888,777,999
(赞赏伪代码)
答案 0 :(得分:0)
while (strings not empty)
path = strings.pop
foreach (s:strings)
if (s starts with path end)
strings.remove(s)
path.append(s)
restart loop
if (s ends with path start)
strings.remove(s)
path.prepend(s)
restart loop
paths.add(path)
答案 1 :(得分:0)
我想你应该检查一下JGraphT项目,它也有许多基于图形的算法和示例代码,也可以推广你的顶点/边缘对象表示!