此文章有一部分(定理,证明)来自于华中师范大学学报(自然科学版)
主要结论
定理 1
n个“1”和n个“0”组成的2n位的二进制数,要求从左到右扫描,“1”的累计数不小于“0”的累计数,这样的二进制数的个数为著名的Calatan数 C(2n,n)/(n+1) ,
(n>=0)
证明
令An为n个“1”和n个“0”组成的符合二进制数的个数,n个“1”和n个“0”组成的二进制数可以看作是一种类型(1型)为n个元素和另一种类型(0型)的n个元素的两种不同元素的排列,这样的排列个数位C(2n,n) = (2n)!/(n!n!),从C(2n,n)中减去不符合要求的个数即为所求的An,考虑n个"1"和n个"0"组成的不符合要求的二进制数,不符合要求的数应为:从左到右扫描时,必然存在一个最小的k使得在这k位上首先出现"0"的累计数多于"1"的累计数,特别得,k是一个奇数,而在k之前的k-1位数中,有相等个数的"0"和"1",而且这第k位上是"0",现在把这前k位中每一位上的数进行交换,"1"换成"0","0"换成"1",并且保持剩下的数不变,结果这样的二进制数是一个有n+1个"1"和n-1个"0"的二进制数,即一个不合要求的二进制数对应一个由n+1个"1"和n-1个"0"组成的一个排列,这个过程是可逆的:任何一个由n+1个"1"和n-1个"0"组成的2n位数,由于