Java 使用后序+;有序
您好,我正在打印前序树遍历,只有顺序和后序遍历。执行此操作的代码如下所示:Java 使用后序+;有序,java,recursion,tree,traversal,preorder,Java,Recursion,Tree,Traversal,Preorder,您好,我正在打印前序树遍历,只有顺序和后序遍历。执行此操作的代码如下所示: public static void preorder( int inorder[], int inostart, int postorder[], int poststart, int length) { if(length==0) return; //terminating condition int k=0; System.out.print(postorder[l
public static void preorder( int inorder[], int inostart, int postorder[], int poststart, int length)
{
if(length==0) return; //terminating condition
int k=0;
System.out.print(postorder[length-1] + " ");
for(int i=inostart; i<inostart+length; i++)
{
if(postorder[poststart+length-1]==inorder[i])
{
k=i;
break;
}
}
preorder(inorder, inostart, postorder, poststart, poststart+k-(inostart+1));
preorder(inorder, inostart+k-poststart+1, postorder, k+1, length-k+inostart-1);
}
publicstaticvoidpreorder(int-inoorder[],int-inostart,int-postorder[],int-poststart,int-length)
{
if(length==0)返回;//终止条件
int k=0;
系统输出打印(postorder[长度-1]+“”);
对于(int i=inostart;ii如果您的二叉树实现不允许重复,那么您的post order和in order遍历结果看起来都不正确没有重复项您应该再次检查您的post order和inorder实现,4不能同时是根节点和左叶节点,是的,我知道我的注释are off topicI没有后序和后序实现吗?只有这个函数来获得前序遍历,在我的主函数中,我给它以顺序和后序数