已知一颗具有n个结点的完全二叉树以向量作为存储结构,设计一个非递归算法,实现对该树的先序遍历。

2025-02-27 23:24:44
推荐回答(1个)
回答1:

public class haha {
public haha(int tree[]) {
int p = 0;
int k = 0;

while(k != tree.length){
if(p < tree.length){
System.out.print(tree[p]+" ");
p = 2*p+1;
k++;
}
else {
p = p/2;
if(p%2==0){
p=p/4-1;
p = 2*p+2;
}
else { p =p+1;
if(p >= tree.length)
p = 2*p+1;
}

}
}
}
public static void main (String[] args) {
int tree[] = {1,2,3,4,5,6,7,8};
new haha(tree);

}
}