微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有 n 个编号为 1 到 n 的列车,它们以堆栈结构排列有多少种类型的火车?

如何解决有 n 个编号为 1 到 n 的列车,它们以堆栈结构排列有多少种类型的火车?

有 n 列编号为 1 到 n 的列车以堆栈结构进出车站,如下图所示。有多少种可能的“流行”序列?

 w

例如,n=5 列车的可能路径序列是,1 次进入,1 次离开,2 次进入,2 次离开,3 次进入,3 次离开,...,导致 12345 作为可能的弹出序列。

如果 n=6,是否可能出现以下序列:

  • 435612
  • 325641
  • 154623
  • 135426

解决方法

对于 n 个列车,可行序列的数量是第 n 个 Catalan number

我们被迫推第一班火车。当我们弹出第一列火车时,我们已经在下一列火车的 0 和 n-1 之间进行了推送和弹出。然后我们推动并弹出剩余的火车。这导致重复 T(0) = 1; T(n) = T(i) T(n-1−i) 的从 0 到 n−1 的 i 的总和,这是加泰罗尼亚递归。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。