论坛首页 Java企业应用论坛

[算法]生成树的算法

浏览 3857 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-08-30  
场景:
有一组2纬数据,一个代表树节点的名字, 一个代表树节点出现的位置: 如下
 site    name

 1       name1
 11      name2
 111     name3
 112     name4
 113     name5
 12      name6
 121     name7
 122     name8
 13      name9


按照site来计算树的出现位置: 这上面的数据对应如下的树:(就不用图片了, 使用文字简单按照缩进排列)
 name1 
       name2
             name3
             name4
             name5
       name6
             name7
             name8
       name9


树的深度最多5层, 在数据量比较大的情况下 使用甚么算法比较高效呢?
   发表时间:2007-08-31  
icess 写道
场景:
有一组2纬数据,一个代表树节点的名字, 一个代表树节点出现的位置: 如下
 site    name

 1       name1
 11      name2
 111     name3
 112     name4
 113     name5
 12      name6
 121     name7
 122     name8
 13      name9


按照site来计算树的出现位置: 这上面的数据对应如下的树:(就不用图片了, 使用文字简单按照缩进排列)
 name1 
       name2
             name3
             name4
             name5
       name6
             name7
             name8
       name9


树的深度最多5层, 在数据量比较大的情况下 使用甚么算法比较高效呢?

问一下,数据是按顺序的?还是乱序的?
0 请登录后投票
   发表时间:2007-08-31  
按照上面的顺序的.
0 请登录后投票
   发表时间:2007-09-01  
icess 写道
场景:
有一组2纬数据,一个代表树节点的名字, 一个代表树节点出现的位置: 如下
 site    name

 1       name1
 11      name2
 111     name3
 112     name4
 113     name5
 12      name6
 121     name7
 122     name8
 13      name9


树的深度最多5层, 在数据量比较大的情况下 使用甚么算法比较高效呢?


直接将site按照String类型取出来,并把site,name都成的节点的数据结构放到List(ArrayList|LinkedList)中.然后在遍历的时候只要根据site的length来缩进就可以了.
0 请登录后投票
   发表时间:2007-09-01  
直接用递归,非常方便
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics