设入栈序列为I(n):1,2,...,n1I(n)有C(2n,n)-C(2n,n-1)个出栈序列。2L(n)是I(n)的一个出栈序列当且仅当:对于L(n)的任意一位数M,其后面比它小的数降序排列注:[1],结论1是数《数据结构》课本上的原话所以不会囿错,另外根据卡塔兰数的几何意义也容易证明。[2]结论2是我自己观察的,自认为应该是对的举个例子如下:判断序列L(6):4,3,5,2,1,6是否为I(6)的出棧序列。
解:4后面比4小的数3,2,1是降序列;3后面比3小的数2,1是降序排列;5后面比5小的数2,1是降序排列;2后面比2小的数φ是降序排列;1后面比1小的数φ降序排列;6后面比6小的数φ是降序排列。所以L(6)是I(6)的一个出栈序列