tty实在是太菜了,他需要把自己学到的各种东西整理一下/kk
1.主定理
原文,整理的有自己的理解,不保证严格符合原定义
对于一个递归式 T(n)=aT(bn)+f(n)
令c=logba,f(n)=O(nk)或O(nklog)(例如在f(n)=nlogn时,k=1)
1.当c>k时,T(n)=O(nc)
2.当c=k,且T(n)=aT(bn)+f(nklogpn)(logpn即logn的p次方)时,T(n)=O(nclogp+1n)
3.当c<k时,T(n)=O(f(n))
2.各种数
等比数列通项公式:an=a1∗qn−1
卡特兰数:hn=n+1C2nn
错位排列:
通项式:D(n)=n!1(1−1!1+2!1−3!1+...+(−1)n∗n!1)
递推式:Dn=(n−1)∗(Dn−1+Dn−2),D1=0,D2=1
各种组合:
1.从n个数中选取k个数,每个数可被重复选取的方案个数:Cn+k−1k
2.a1+a2+...+an=m的正整数解的个数(将m件物品分给n个人,不允许有人为空的方案数):Cm−1n−1
3.a1+a2+...+an=m的非负整数解的个数(将m件物品分给n个人,允许有人为空的方案数):Cn+m−1m−1