读书人

可能小弟我要的是一个算法递归

发布时间: 2012-03-30 17:32:09 作者: rapoo

可能我要的是一个算法,递归?
0 - 1 - 3
- 2 - 4
- 5
- 6 - 7
- 8

看的懂么? 要求, 根据0 得到3,4,5,7,8
(数据库中:根据0可以得到1,2 根据1可以得到3 根据2可以得到4,5,6 根据6可以得到7,8)


[解决办法]
不就是树形结构,寻找叶子节点么。。。。
[解决办法]
好像真的是树形节点诶
[解决办法]
就是递归,通过传入的节点ID先判断它是否还有子节点,如果没有则直接返回,如果有就递归寻找其子节点。
思路大概就这样:

Java code
    public void getChildNode(String id, List<String> childNodes){        //通过id去获取他的子节点        String[] childs = getChilds(id);        //表明是根节点了。        if(childs == null || childs.length == 0){            childNodes.add(id);        }else{            for(String cid : childs){                getChildNode(id, childNodes);            }        }    }
[解决办法]
是个树形结构
[解决办法]
不就是要,除了根节点的,每个节点的最终的叶子节点么?
Java code
    public void getChildNode(String id, List<String> childNodes){        //通过id去获取他的子节点        String[] childs = getChilds(id);        //表明是根节点了。        if(childs == null || childs.length == 0){            childNodes.add(id);        }else{            for(String cid : childs){                getChildNode(id, childNodes);            }        }    }
[解决办法]
一种数据结构嘛。不用麻烦自己写算法。去google

读书人网 >J2EE开发

热点推荐