【发布时间】:2016-04-29 03:16:29
【问题描述】:
对于我的作业,我正在创建一个代码,该代码从一组 10,000 个数字中生成一千个随机整数,将它们移动到一个容器中,然后移动到一个二叉搜索树中。我首先得到以下代码:
Random ran = new Random();
Integer x;{
for(int i = 1; i <= 100; i++){
x = ran.nextInt(10,000) + 1;
}
我有一个 BSTNode 和一个 Intclass。给定 BST 类中的以下代码,我可以使用它来搜索
public boolean search(Integer value) {
boolean retval = false;
numofcomps ++;
if (root == null) {
retval = false;
} else {
retval = searchtree(root, value);
}
return retval;
}
public boolean searchtree(BSTNode<IntClass> myroot, int value) {
numofcomps ++;
boolean retval = false;
if (myroot == null) {
retval = false;
} else {
if (value == myroot.element.myInt) {
retval = true;
} else {
if (value < myroot.element.myInt) {
retval = searchtree(myroot.leftTree, value);
} else {
retval = searchtree(myroot.rightTree, value);
}
}
}
我需要弄清楚如何将随机数移动到二叉树中。有什么建议吗?
【问题讨论】:
-
您所描述的是插入操作。搜索“如何插入 BST”。
-
你有一些
search方法,那么你的insert方法呢? -
您可能想要构建一个由
Nodes组成的Tree类,并使用和插入方法,您将在其中将Node插入到Tree中,其中Node具有值随机int。插入的行为类似于搜索。所以你有了一个好的开始。
标签: java random binary-search-tree