首页 > 代码库 > 算法训练 求先序排列
算法训练 求先序排列
问题描述
给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度<=8)。
给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度<=8)。
输入格式
两行,每行一个字符串,分别表示中序和后序排列
输出格式
一个字符串,表示所求先序排列
样例输入
BADC
BDCA
样例输入
BADC
BDCA
样例输出
ABCD
1 import java.math.BigInteger; 2 import java.util.Arrays; 3 import java.util.Scanner; 4 5 6 public class Main { 7 static String a; 8 static String b; 9 public static void main(String[] args) { 10 Scanner input = new Scanner(System.in); 11 a = input.next(); 12 b = input.next(); 13 f(0,a.length()-1,b.length()-1); 14 15 } 16 public static void f(int a1,int b1,int b2){ 17 if(a1>b1) return; 18 System.out.print(b.charAt(b2)); 19 f(a1,a.indexOf(b.charAt(b2))-1,b2-(b1-a.indexOf(b.charAt(b2)))-1); 20 f(a.indexOf(b.charAt(b2))+1,b1,b2-1); 21 22 23 24 } 25 }
算法训练 求先序排列
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。