`
445822357
  • 浏览: 738943 次
文章分类
社区版块
存档分类
最新评论

卡特兰数-N个结点二叉树个数

 
阅读更多


N个结点二叉树个数(不用卡特兰数求解)
对于一个堆栈、若其入栈序列为1,2,3,……,n,不同的出入栈操作将产生不同的出栈序列。其出栈序列的个数正好等于结点个数为n的二叉树的个数,且与不同形态的二叉树一一对应。请简要叙述一种从堆栈输入(固定为1,2,3,……,n)/ 输出序列对应一种二叉树形态的方法,并以入栈序列1,2,3(即n=3)为例加以说明。



本题考查栈的出入栈操作、二叉树的遍历思想。由于二叉树前序遍历序列和中序遍历序列可唯一确定一棵二叉树。因此,若入栈序列为1,2,3,……,n,相当于前序遍历序列是1,2,3,……,n,出栈序列就是该前序遍历对应的二叉树的中序序列的数目。


进栈出栈操作与二叉树中序遍历的关系:①一个结点进栈后有两种处理方式:要么立刻出栈- 44 - (没有左孩子);或者下一个结点进栈(有左孩子)。②一个结点出栈后也有两种处理方式:要么继续出栈(没有右孩子);或者下一个结点进栈(有右孩子)。



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics