您的位置:首页 > 其它

根据前序,中序求后续

2014-04-19 18:30 316 查看
#include <stdio.h>
#include <string.h>
#include <iostream>
#include <string>
#include <stdlib.h>

using namespace std;

void postOrder(char *pre, char *in, int len)
{
if (len <= 0)
{
return ;
}
int i;
for (i = 0; i < len; i++)
{
if (in[i] == *pre)
{
break;
}
}
postOrder(pre + 1, in, i);
postOrder(pre + i + 1, in + i + 1, len - (i + 1));
printf("%c", *pre);
}

int main()
{
char* pre = new char[111];
char* in = new char[111];
while (cin >> pre >> in)
{
postOrder(pre, in, strlen(pre));
cout << endl;
}
}

/*
GDAFEMHZ
ADEFGHMZ
*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: