Apr 10

      写了组合生成函数 ,本来打算再写排列生成函数的,但是看到了一个讲生成函数的讲义,觉得非常的好,所以我也就不写了,不过文章太长了,就用图片分享给大家吧。文章是用繁体字写的,不过还好,不是很难认。

Apr 1

Romberge算法是什么,其实是一种求数值积分的方法。就是先不断二分用递推梯形公式求出Tn,再通过Tn,T2n的线性组合求出复化Simpon积分Sn,再通过Sn,S2n的线性组合求出Cotes积分值,这样一步步往下算,它是一种加速算法。过程像下面这样:

                                                                                   T1 
                                                                                   T2    S1
                                                                                   T4    S2    C1
                                                                                   T8    S4    C2    R1
                                                                                   T16  S8    C4    R2   ....
 
下面是用C语言实现的代码:

Mar 28

在提出「生成函数」的数学定义之前,我们先考虑几个简单的排列组合问题。(不知道怎么回事,发表这篇文章首页显示会有问题,搞了好久没找到问题,于是清空重新输入了一遍,并把所有公式都去掉了,用文本代替,首页显示终于没问题了,可能公式就得你费力看了)。

考虑恒等式:(1+ax)(1+bx)(1+cx)=1+(a+b+c)x+(ab+bc+ac)x^2+abcx^3

如将a,b,c 看作代表三个对象,它的右边是一多项式,其系数恰代表了将 a,b,c 作组合的各种可能。常数项1表示在三对象中一个都不取;x 的系数a+b+c 表示在a,b,c 中取一个的各种组合,即或取a,或取b,或取 cx^2 的系数ab+bc+ac 表取二个的各种组合;x^3之系数表示了三个皆取的唯一方法。在这里可能产生各种情形是用+号连接,同时发生之事件则用乘法(即符号并列)表示。 

又设有5个球 a,a,a,b,c,其中三个球a 完全一样,则恒等式: 

 (1+ax+a^2x^2+a^3x^3)(1+bx)(1+cx)= 1+(a+b+c) x+(a^2+a b+a c+b c) x^2+(a^3+a^2 b+a^2c+

a b c) x^3+(a^3 b+a^3 c+a^2 b c) x^4+a^3 b c x^5

其中 x^r的系数表示了选取r个的各种可能组合(1<=r<=5 ) 

在排列组合问题中,加法原则与乘法原则是大家熟知的两个法则。加法原则是讲如一事件可能发生情况有 m 种,另一种事件可能发生情况有 n 种,则这两种事件其一发生情况有m+n 种。乘法原则是讲如一事件可能发生情况有m种,另一事件可能发生情况有n种,则这两事件同时发生情况有mn种。我们在上面两例用到的是一种符号运算,它遵从这两法则。在第二个例子中,因子(1+ax+a^2x^2+a^3x^3)表示了或不取a,或取一个a,或取2a,或取三个a 的各种情况;而在第一个例子中,(1+ax)(1+bx)表示了如果 a , b 被允许同时选取时可能产生之各种情况。