算法训练 求先序排列
Posted 来一点音乐
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法训练 求先序排列相关的知识,希望对你有一定的参考价值。
问题描述
给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度<=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 }
以上是关于算法训练 求先序排列的主要内容,如果未能解决你的问题,请参考以下文章