函数题:二叉树的遍历(Java语言描述)
请将二叉树的遍历算法补充完整。
### 方法说明
private void PreOrder11(BTNode<Character> root) {
//先根遍历
}
private void InOrder11(BTNode<Character> root) {
//中根遍历
}
private void PostOrder11(BTNode<Character> root) {
//后根遍历
}
### 裁判测试程序样例:
Java
源程序如下:
import java.util.Scanner;
import java.util.Stack;
class BTNode <E>{
E data;
BTNode<E> lchild;
BTNode<E> rchild;
public BTNode(E e)
{
data=e;
lchild=null;
rchild=null;
}
}
class BTTreeClass {
public BTNode<Character> root;
public BTTreeClass()
{
root=null;
}
void CreatBTTree(String s)
{
//用 括号表示法的字符串创建二叉链,内容 省略。
}
public void PreOrder1( )
{
PreOrder11(this.root);
}
public void InOrder1( )
{
InOrder11(this.root);
}
public void PostOrder1()
{
PostOrder11(this.root);
}
/* 答案填充在这里*/
}
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
BTTreeClass bt = new BTTreeClass();
String s= sc.next();
if( !s.equals("^"))
bt.CreatBTTree(s);
bt.PreOrder1( );
System.out.println();
bt.InOrder1( );
System.out.println();
bt.PostOrder1( );
System.out.println();
sc.close();
}
}
### 输入样例:
输入二叉树的括号表示法的字符串。每个元素为字符型。例如:
in
A(B,C)
### 输出样例:
输出三种遍历的结果,先根遍历、中根遍历、后根遍历。
每个结果占一行。
每个元素后有1个空格,用于分隔。例如:
out
A B C
B A C
B C A
### 输入样例2:
in
A(,C)
### 输出样例2:
out
A C
A C
C A
### 输入样例3:
in
A(B)
### 输出样例3:
out
A B
B A
B A
答案:若无答案欢迎评论
### 方法说明
private void PreOrder11(BTNode<Character> root) {
//先根遍历
}
private void InOrder11(BTNode<Character> root) {
//中根遍历
}
private void PostOrder11(BTNode<Character> root) {
//后根遍历
}
### 裁判测试程序样例:
Java
源程序如下:
import java.util.Scanner;
import java.util.Stack;
class BTNode <E>{
E data;
BTNode<E> lchild;
BTNode<E> rchild;
public BTNode(E e)
{
data=e;
lchild=null;
rchild=null;
}
}
class BTTreeClass {
public BTNode<Character> root;
public BTTreeClass()
{
root=null;
}
void CreatBTTree(String s)
{
//用 括号表示法的字符串创建二叉链,内容 省略。
}
public void PreOrder1( )
{
PreOrder11(this.root);
}
public void InOrder1( )
{
InOrder11(this.root);
}
public void PostOrder1()
{
PostOrder11(this.root);
}
/* 答案填充在这里*/
}
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
BTTreeClass bt = new BTTreeClass();
String s= sc.next();
if( !s.equals("^"))
bt.CreatBTTree(s);
bt.PreOrder1( );
System.out.println();
bt.InOrder1( );
System.out.println();
bt.PostOrder1( );
System.out.println();
sc.close();
}
}
### 输入样例:
输入二叉树的括号表示法的字符串。每个元素为字符型。例如:
in
A(B,C)
### 输出样例:
输出三种遍历的结果,先根遍历、中根遍历、后根遍历。
每个结果占一行。
每个元素后有1个空格,用于分隔。例如:
out
A B C
B A C
B C A
### 输入样例2:
in
A(,C)
### 输出样例2:
out
A C
A C
C A
### 输入样例3:
in
A(B)
### 输出样例3:
out
A B
B A
B A
答案:若无答案欢迎评论