首页 新闻 会员 周边 捐助

前根和中根序列遍历构造二叉树

0
悬赏园豆:5 [待解决问题]

请问要怎么解决根节点表意不清的问题,老师说如果两个根节点元素相同就会出错
private BinaryNode<T>create(T prelist[],T inlist[],int start,int end,int instart,int inend)
{
if(start>end||instart>inend)
return null;
else
{
int i;
for(i=instart;i<inend;i++)
{
T l1=inlist[i],l2=prelist[start];
if(inlist[i].equals(prelist[start]))
break;
}
BinaryNode<T> p=new BinaryNode<T>(prelist[start]);
p.left=create(prelist,inlist,start+1,start+i-instart,instart,i-1);
p.right=create(prelist,inlist,start+i-instart+1,end,i+1,inend);
return p;
}
}

小鸭子嘻嘻哈哈的主页 小鸭子嘻嘻哈哈 | 初学一级 | 园豆:194
提问于:2019-12-30 13:11
< >
分享
所有回答(1)
0

设断点调试下

会长 | 园豆:12463 (专家六级) | 2019-12-30 13:31

嗯……我知道哪里不行,不会改

支持(0) 反对(0) 小鸭子嘻嘻哈哈 | 园豆:194 (初学一级) | 2019-12-30 13:33

@小鸭子嘻嘻哈哈: 两个根节点元素相同是啥意思,一棵树不是只有一个跟节点吗?

支持(0) 反对(0) 会长 | 园豆:12463 (专家六级) | 2019-12-30 13:40

@小鸭子嘻嘻哈哈: 我猜测你是不知道怎么处理和父节点的值一样的值怎么插入到树中,对吧?有3中方法,第一是丢弃(或替换),第二是插入到左子节点,第三插入右子节点,根据需求选择一种方案好了。

支持(0) 反对(0) 会长 | 园豆:12463 (专家六级) | 2019-12-30 13:43

@会长: 是构造一根二叉树 没办法丢弃,也不是插入

支持(0) 反对(0) 小鸭子嘻嘻哈哈 | 园豆:194 (初学一级) | 2019-12-30 13:45

@小鸭子嘻嘻哈哈: 不丢弃,不插入,那要怎么办?????

支持(0) 反对(0) 会长 | 园豆:12463 (专家六级) | 2019-12-30 13:46

@会长: 老师说用什么广义,深义的

支持(0) 反对(0) 小鸭子嘻嘻哈哈 | 园豆:194 (初学一级) | 2019-12-30 13:47

@小鸭子嘻嘻哈哈: 不太清楚

支持(0) 反对(0) 会长 | 园豆:12463 (专家六级) | 2019-12-30 13:47

@会长: 蟹蟹了

支持(0) 反对(0) 小鸭子嘻嘻哈哈 | 园豆:194 (初学一级) | 2019-12-30 13:48

@小鸭子嘻嘻哈哈: 你老师说的是“广度优先”和“深度优先”吧?

支持(0) 反对(0) 会长 | 园豆:12463 (专家六级) | 2019-12-30 13:54

@会长: 好像是

支持(0) 反对(0) 小鸭子嘻嘻哈哈 | 园豆:194 (初学一级) | 2019-12-30 13:54

@会长: 应该是广义表

支持(0) 反对(0) 小鸭子嘻嘻哈哈 | 园豆:194 (初学一级) | 2019-12-30 14:18

@小鸭子嘻嘻哈哈: 赞

支持(0) 反对(0) 会长 | 园豆:12463 (专家六级) | 2019-12-30 14:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册