甜点网站要怎么做,wordpress的用户登录地址默认,wordpress 收录插件,免费建学校网站1. 题目链接#xff1a;http://poj.org/problem?id2255
2. 题目大意#xff1a;
给定二叉树的前序和中序序列#xff0c;输出其后序序列
3. 思考过程#xff1a; 4. AC代码 /*** description: 给出前序和中序二叉树节点序列#xff0c;求后序二叉树节点输出序列* auth…1. 题目链接http://poj.org/problem?id2255
2. 题目大意
给定二叉树的前序和中序序列输出其后序序列
3. 思考过程 4. AC代码 /*** description: 给出前序和中序二叉树节点序列求后序二叉树节点输出序列* author: michael ming* date: 2019/5/21 18:49* modified by: */
#include iostream
#include string
using namespace std;
void postOrder(string pre, int pre_start, int pre_end, string in, int in_start, int in_end)
{char root pre[pre_start]; //前序的根节点int pos in.find(root); //在中序里找到rootint L_len pos - in_start, R_len in_end - pos; //计算左右子树长度if(L_len 1)postOrder(pre, pre_start1, pre_startL_len, in, in_start, pos-1); //对左子树递归调用if(R_len 1)postOrder(pre, pre_startL_len1, pre_end, in, pos1, posR_len); //对右子树递归调用cout root; //后序最后输出根节点
}
int main()
{string preOrder, inOrder;while(cin preOrder inOrder){//参数前序字符前序开始p前序结束p中序字符中序开始p中序结束ppostOrder(preOrder, 0, preOrder.size()-1, inOrder, 0, inOrder.size()-1);cout endl;}return 0;
}