【数据结构?栈】卡特兰数(数据结构栈和队列实验报告)

【数据结构?栈】卡特兰数(数据结构栈和队列实验报告)-图1

文章目录
    • 卡特兰数公式
      • 出栈序列数
      • 二叉树形态数

卡特兰数公式
  • f(n) = C(2n,n) / (n+1)
  • 计算用途:二叉树形态数,出栈序列数
出栈序列数

【例 1】3 个不同元素依次进栈,能得到多少种不同的出栈序列?

【解】f(3) = C(6,3) / (3+1) = 20 / 4 = 5

【例 2】5 个不同元素依次进栈,能得到多少种不同的出栈序列?

【解】f(5) = C(10,5) / (5+1) = (6 * 7 * 6) / 6 = 42

二叉树形态数

【例】先序序列(前序序列)为 a, b, c, d 的不同二叉树的个数是?

【解】前序序列为入栈次序,中序序列为出栈序列,因为前序序列和中序序列可以唯一确定一棵二叉树,所以相当于“以序列 a, b, c, d
为入栈次序,则出栈序列的个数是?”

f(4) = C(8,4) / (4+1) = 70 / 5 = 14

转载请说明出处 内容投诉内容投诉
南趣百科 » 【数据结构?栈】卡特兰数(数据结构栈和队列实验报告)

南趣百科分享生活经验知识,是您实用的生活科普指南。

查看演示 官网购买