求二叉树的遍历
最后更新于
let pre;
let vin;
while((pre = readline())!=null){
vin = readline();
print(getHRD(pre,vin));
}
function getPostOrder(pre, vin) {
if (!pre) {
return '';
}
if (pre.length === 1) {
return pre;
}
const head = pre[0];
const splitIndex = vin.indexOf(head);
const vinLeft = vin.substring(0, splitIndex);
const vinRight = vin.substring(splitIndex + 1);
const preLeft = pre.substring(1, splitIndex + 1);
const preRight = pre.substring(splitIndex + 1);
return getPostOrder(preLeft, vinLeft) + getPostOrder(preRight, vinRight) + head;
}