void CreateTree(TreeNode node, char data[], Index index) {
if (data[index.GetIndex()] == '#')
node = null;
else {
node = new TreeNode();
node.data = data[index.GetIndex()];
if (root == null)
root = node;
index.AddIndex();
CreateTree(node.lnode, data, index);
CreateTree(node.rnode, data, index);
}
}这是一段递归建树的代码,就是把数组data转成树,在这里root的子树结果都为null,为什么?
if (data[index.GetIndex()] == '#')
node = null;
else {
node = new TreeNode();
node.data = data[index.GetIndex()];
if (root == null)
root = node;
index.AddIndex();
CreateTree(node.lnode, data, index);
CreateTree(node.rnode, data, index);
}
}这是一段递归建树的代码,就是把数组data转成树,在这里root的子树结果都为null,为什么?
解决方案 »
- 请教一个关于JXL的问题
- 各位帮帮我,
- xml文件在IE下不能直接浏览?
- 如何才能使JLabel的文字自左向右移动,然后到了窗体的边缘,又从右向左移动,好象横向滚动的效果?在线等
- 求救:小弟在一个类中调用另一个类中的函数,在开发环境下能够正常运行但用jbuilder编译以后无法运行。
- 关于动态网站设计中的文件上传问题
- 我用Robot捕获屏幕(看不到鼠标),怎么样才能在抓图时把鼠标一起抓下来?
- 如何在java 中启动另一进程?(类似于vb的shell函数的功能)
- 用过netbeans的大神来解答下我的问题?高分100!!来着有份!
- java 内存可见性问题
- 再问个问题,厚厚~~~~
- 一个servlet的菜鸟问题?
index.AddIndex(),将当前索引登记??
如果是如上,那么在执行
CreateTree(node.lnode, data, index);
遍历 lnode时,data就将被遍历完,也就是rnode便利时将执行如下
if(data[index.GetIndex()] == '#')
node = null;
GetIndex()获得的都是最后一个数据值'#',也就是rnode获取的都是空值