已知前序和中序求后序
程序员文章站
2022-05-19 20:56:24
...
1
public TreeNode createTree(String preOrder,String inOrder)
{
if(preOrder.isEmpty())
{
return null;
}
char rootValue = preOrder.charAt(0);
int rootIndex = inOrder.indexOf(rootValue);
TreeNode root = new TreeNode(rootValue);
root.setLeft(
createTree(
preOrder.substring(1,1+rootIndex),
inOrder.substring(0,rootIndex)
)
);
root.setRight(
createTree(
preOrder.substring(1+rootIndex),
inOrder.substring(1+rootIndex)
)
);
return root;
}
2
public String postOrder(String preOrder , String inOrder)
{
if(preOrder.isEmpty())
{
return "";
}
char rootValue = preOrder.charAt(0);
int rootIndex = inOrder.indexOf(rootValue);
return preOrder(
preOrder.substring(1,1+rootIndex),
inOrder.substring(0,rootIndex)
)+preOrder(
preOrder.substring(1+rootIndex),
inOrder.substring(1+rootIndex)
)+rootValue;
}
上一篇: 产生指定范围不重复的随机数,产生指定数组不重复的随机数
下一篇: javaweb实现验证码功能
推荐阅读
-
Python实现输入二叉树的先序和中序遍历,再输出后序遍历操作示例
-
PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)实例详解
-
[PHP] 算法-根据前序和中序遍历结果重建二叉树的PHP实现
-
c/c++ 用前序和中序,或者中序和后序,创建二叉树
-
Python实现二叉树前序、中序、后序及层次遍历示例代码
-
【算法】二叉树的前序、中序、后序、层序遍历和还原。
-
Python二叉树的遍历操作示例【前序遍历,中序遍历,后序遍历,层序遍历】
-
L2-006 树的遍历 (后序中序求层序)
-
已知后序遍历和中序遍历求层序遍历(树的遍历)
-
剑指 Offer 07. 重建二叉树——【前中序】和【中后序】重建二叉树的递归思路详解