• 87 求先序排列


    87 求先序排列

    作者: Turbo时间限制: 1S章节: 深度优先搜索

    问题描述 :

    给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度<=8)。

    输入说明 :

    两行,每行一个字符串,分别表示中序和后序排列

    输出说明 :

    一个字符串,表示所求先序排列

    输入范例 :
    BADC
    BDCA
    输出范例 :
    ABCD

    #include <iostream>
    #include <string>
    using namespace std;
    void preOrder(string in, string post)
    {
    	if ((int)in.length() > 0)
    	{
    		char c = post[(int)post.size() - 1];
    		cout << c;
    		int k = in.find(c);
    		preOrder(in.substr(0, k), post.substr(0, k));
    		preOrder((in.substr(k + 1)), post.substr(k, post.size() - k - 1));
    	}
    }
    int main()
    {
    	string inOrder, postOrder;//中后
    	cin >> inOrder >> postOrder;
    	preOrder(inOrder, postOrder);
    	return 0;
    }
    
    Yesterday is history,tomorrow ismystery,but today is a gift!That why it is called Present!
  • 相关阅读:
    团队冲刺第二阶段2
    团队冲刺第二阶段1
    第十二周总结
    团队游戏
    三个和尚
    第十一周总结
    第十周总结
    调用摄像头拍照
    怎样从相册中选择照片?
    怎样插入并播放音频?
  • 原文地址:https://www.cnblogs.com/VictorierJwr/p/12878378.html
Copyright © 2020-2023  润新知