UVa548

UVa548
代码


题目:给出加权二叉树的中序遍历和后序遍历,找出一枚叶子使其到根节点的总权重最小,如果总权重相同,叶子本身的权重尽量小

共有三种递归遍历,且都是深度优先遍历

  • 前序遍历:根左右,即PreOrder(T) = T的根节点 + PreOrder(T的左子树) + PreOrder(T的右子树)
  • 中序遍历:左根右,即InOrder(T) = InOrder(T的左子树) + T的根节点 + InOrder(T的右子树)
  • 后序遍历:左右根,即PostOrder(T) = PostOrder(T的左子树) + PostOrder(T的右子树) + T的根节点
  • 三者的关系:即使前序遍历和后序遍历实质是一样的,因此仅知道这两者是无法推出二叉树的结构,一定要搭配上中序遍历才能推出。