![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构与算法基础
文章平均质量分 57
Miles-
这个作者很懒,什么都没留下…
展开
-
Catalan数——卡特兰数
一、Catalan数的定义 令h(0)=1,h(1)=1,Catalan数满足递归式:h(n) = h(0)*h(n-1) + h(1)*h(n-2) + ... + h(n-1)*h(0) (n>=2) 该递推关系的解为:h(n) = C(2n,n)/(n+1),n=0,1,2,3,... (其中C(2n,n)表示2n个物品中取n个的组合数)二、问题描述 12转载 2018-01-12 20:06:29 · 874 阅读 · 0 评论 -
折现法——卡特兰数证明
1.饭后,姐姐洗碗,妹妹把姐姐洗过的碗一个一个地放进碗橱摞成一摞。一共有n个不同的碗,洗前也是摞成一摞的,也许因为小妹贪玩而使碗拿进碗橱不及时,姐姐则把洗过的碗摞在旁边,问:小妹摞起的碗有多少种可能的方式?2.给定n个数,有多少种出栈序列?3.一个有n个1和n个-1组成的字串,且前k个数的和均不小于0,那这种字串的总数为多少? 这三个问题具有相同的结转载 2018-01-12 20:35:31 · 496 阅读 · 0 评论 -
各种排序算法的总结
排序算法可以说是一项基本功,解决实际问题中经常遇到,针对实际数据的特点选择合适的排序算法可以使程序获得更高的效率,有时候排序的稳定性还是实际问题中必须考虑的,这篇博客对常见的排序算法进行整理,包括:插入排序、选择排序、冒泡排序、快速排序、堆排序、归并排序、希尔排序、二叉树排序、计数排序、桶排序、基数排序。 代码都经过了CodeBlocks的调试,但是很可能有没注意到的B转载 2018-02-13 13:30:36 · 422 阅读 · 0 评论