1
私はバイナリ検索アルゴリズムを記述しようとしています。配列を検索して配列に挿入するのはコードです。私がしたことは、右の動きがインデックスの2倍、左が1です。コードはここにあります。検索方法が配列を1つずつ順番に繰り返すループより速いかどうかも疑問でした。BST in java in arrays
public class BinaryTree {
int root =0;
int right = 2;
int left = 1;
int arr[];
public void search(int arr[], int value){
if(arr[right] == value){
System.out.println("found");
return;
}
if(arr[left] == value){
System.out.println("found");
return;
}
else{
left+=1;
right+=2;
}
}
public void insert(int value, int arr[]) {
this.arr = arr;
if(arr[0]==0){
arr[0] = value;
root = arr[0];
System.out.println(root);
}
if(value>root){
if(arr[right]==0){
arr[right] = value;
right+=2;
}
}
if(value<root){
if(arr[left]==0){
arr[left] = value;
left+=1;
}else{
left+=1;
}
}
}
public void printint(){
for(int i=0;i<arr.length;i++){
System.out.print(arr[i]);
}
}
public static void main(String args[]) {
int tol[] = new int[9];
BinaryTree tree = new BinaryTree();
tree.insert(4, tol);
tree.insert(9,tol);
tree.insert(9, tol);
tree.insert(2, tol);
tree.search(tol, 9);
tree.printint();
}
}
これはバイナリ検索ツリーと考えられますか?
これはツリーではないため、バイナリ検索ツリーにすることはできません。おそらく[バイナリ検索アルゴリズム](https://en.wikipedia.org/wiki/Binary_search_algorithm)です。 – Andreas
もしあなたが*具体的な質問がない限り、このかなり悪いコードの批判を探しているなら、https://codereview.stackexchange.com/に投稿してください。 – Andreas