文章目录

  • 1. f(n)f(n)f(n) 为常数 ppp
    • 1.1 p=1p = 1p=1
    • 1.2 p≠1p \ne 1p​=1
      • 1.2.1 g(n)g(n)g(n) 非指数函数,为某常数 qqq
      • 1.2.2 g(n)g(n)g(n) 非指数函数,为一次函数
      • 1.2.3 g(n)g(n)g(n) 非指数函数,为二次函数
      • 1.2.4 g(n)g(n)g(n) 为指数函数
  • 2. f(n)f(n)f(n) 不为常数

求数列的通项公式,靠着列举->猜想->归纳法这三板斧,是远远不够的。不过我们能归纳总结出一类常见题型的解法——假设一种简单的递推关系,给出它的递推式如下,要求通项公式:
an=f(n)an−1+g(n)a_n = f(n) a_{n-1} + g(n)an​=f(n)an−1​+g(n)

我们针对 f(n),g(n)f(n), g(n)f(n),g(n) 的类型进行分类讨论:

  • f(n)f(n)f(n) 为常函数,即某常数 ppp

    • p=1p = 1p=1 ,用累加法
    • p≠1p \ne 1p​=1
      • g(n)g(n)g(n) 非指数函数,用构造法

        • g(n)g(n)g(n) 为常函数,即某常数 qqq
        • g(n)g(n)g(n) 为一次函数
        • g(n)g(n)g(n) 为二次函数
      • g(n)g(n)g(n) 为指数函数,用同除法
  • f(n)f(n)f(n) 不为常函数
    • g(n)=0g(n) = 0g(n)=0 ,用累乘法

1. f(n)f(n)f(n) 为常数 ppp

当 f(n)=p(p∈R)f(n) = p\ (p \in \R)f(n)=p (p∈R) 时,递推式变为:
an=pan−1+g(n)a_n = pa_{n - 1} + g(n)an​=pan−1​+g(n)

1.1 p=1p = 1p=1

当 p=1p = 1p=1 时,递推式变为:
an=an−1+g(n)a_n = a_{n - 1} + g(n)an​=an−1​+g(n)

不难发现,相邻两项 an,an−1a_n, a_{n - 1}an​,an−1​ 之差为一个有规律的表达式 g(n)g(n)g(n) 。我们可用累加法计算数列的通项公式,不论 g(n)g(n)g(n) 是一个常函数还是其他函数

【例1】已知 an=an−1+1n(n−1)(n>1)a_n = a_{n - 1} + \dfrac{1}{n (n - 1)} \ (n > 1)an​=an−1​+n(n−1)1​ (n>1) ,a1=1a_1 = 1a1​=1 ,求 ana_nan​ 。
解:用累加法计算:
an−an−1=1n(n−1)=1n−1−1nan−1−an−2=1(n−1)(n−2)=1n−2−1n−1…a2−a1=12=1−12\begin{aligned} a_n - a_{n - 1} &= \dfrac{1}{n (n - 1)} = \dfrac{1}{n-1}- \dfrac{1}{n} \\ a_{n - 1} - a_{n - 2} &= \dfrac{1}{ (n - 1)(n - 2)} = \dfrac{1}{n - 2}- \dfrac{1}{ n - 1}\\ &\dots \\ a_2 - a_1 &= \dfrac{1}{2} = 1 - \dfrac{1}{2} \end{aligned} an​−an−1​an−1​−an−2​a2​−a1​​=n(n−1)1​=n−11​−n1​=(n−1)(n−2)1​=n−21​−n−11​…=21​=1−21​​

将这一系列递推式的左右两边分别相加,得:
an−a1=1−1n(n>1)a_n - a_1 = 1 - \dfrac{1}{n}\ (n > 1)an​−a1​=1−n1​ (n>1) 从而解得: an=2−1na_n = 2 - \dfrac{1}{n}an​=2−n1​

【例2】已知数列 {an}\{a_n\}{an​} ,a1=−1a_1 = -1a1​=−1 ,an+1=an−2n(n∈N∗)a_{n + 1}= a_n - 2^n\ (n \in \N^*)an+1​=an​−2n (n∈N∗) ,求 ana_nan​ 。
解:用累加法计算:
an−an−1=−2n−1an−1−an−2=−2n−2…a2−a1=−21=−2\begin{aligned} a_{n } - a_{n - 1} &= - 2^{n-1} \\ a_{n - 1} - a_{n - 2} &=-2^{n - 2}\\ &\dots \\ a_2 - a_1 &= -2^1 = -2 \end{aligned} an​−an−1​an−1​−an−2​a2​−a1​​=−2n−1=−2n−2…=−21=−2​

将这一系列递推式的左右两边分别相加,得:
an−a1=−(2n−1+2n−2+⋯+2)=2−2n(n>1)a_n - a_1 = -(2^{n - 1} + 2^{n - 2} + \dots + 2) = 2 - 2^n\ (n >1)an​−a1​=−(2n−1+2n−2+⋯+2)=2−2n (n>1) 从而解得: an=1−2na_n = 1 -2^{n}an​=1−2n


1.2 p≠1p \ne 1p​=1

现在讨论 g(n)g(n)g(n) 的四种常见表示形式。

1.2.1 g(n)g(n)g(n) 非指数函数,为某常数 qqq

当 g(n)=q(q∈R)g(n) = q\ (q \in \R)g(n)=q (q∈R) 时,递推式变为:
an=pan−1+qa_n = pa_{n - 1} + qan​=pan−1​+q

我们可用构造法(即不动点法)求其通项,方法简略如下:

  • 首先构造一个 an+x=p(an−1+x)a_n + x = p(a_{n - 1} + x)an​+x=p(an−1​+x) ,解出 xxx ;
  • 再令 bn=an+xb_n = a_n + xbn​=an​+x ,此时 xxx 已知;
  • 因此 bn=pbn−1b_n = pb_{n - 1}bn​=pbn−1​ ,数列 {bn}\{ b_n\}{bn​} 是首项为 b1=a1+xb_1 = a_1 + xb1​=a1​+x 、公比为 ppp 的等比数列;
  • 解出 bnb_nbn​ ,再代入 bn=an+xb_n = a_n + xbn​=an​+x 即可得到 ana_nan​ 表达式。

示例见洛谷 P5743 【深基7.习8】猴子吃桃【递推/递归/数学】,以及求阿克曼函数 m=3m = 3m=3 时 f(3,n)f(3, n)f(3,n) 的通项公式。

1.2.2 g(n)g(n)g(n) 非指数函数,为一次函数

当 g(n)=qn+s(q,s∈R)g(n) = qn+ s\ (q, s\in \R)g(n)=qn+s (q,s∈R) 时,递推式变为:
an=pan−1+qn+sa_n = p a_{n - 1} +qn+ san​=pan−1​+qn+s

此时仍可用构造法,方法与1.2.1类似,构造出 an+xn+y=p(an−1+x(n−1)+y)a_n + xn + y = p(a_{n -1} + x(n - 1) + y)an​+xn+y=p(an−1​+x(n−1)+y) ,解出 x,yx, yx,y ,得到等比数列 {bn}\{b_n\}{bn​} ,余下步骤相同。

1.2.3 g(n)g(n)g(n) 非指数函数,为二次函数

当 g(n)=qn2+sn+t(q,s,t∈R)g(n) = qn^2 + sn + t\ (q, s, t\in \R)g(n)=qn2+sn+t (q,s,t∈R) 时,递推式变为:
an=pan−1+qn2+sn+ta_n = p a_{n - 1} +qn^2+ sn + tan​=pan−1​+qn2+sn+t

此时仍可用构造法,方法与1.2.1类似,构造出 an+xn2+yn+z=p(an−1+x(n−1)2+y(n−1)+z)a_n + xn^2 + yn + z = p(a_{n -1} + x(n - 1)^2 + y(n - 1) + z)an​+xn2+yn+z=p(an−1​+x(n−1)2+y(n−1)+z) ,解出 x,y,zx, y, zx,y,z ,得到等比数列 {bn}\{b_n\}{bn​} ,余下步骤相同。

1.2.4 g(n)g(n)g(n) 为指数函数

当 g(n)=qλn(q,λ∈R)g(n) = q\lambda^n\ (q, \lambda \in \R)g(n)=qλn (q,λ∈R) 时,递推式变为:
an=pan−1+qλna_n = pa_{n - 1} + q\lambda^nan​=pan−1​+qλn

此时:

  • 若 p=λp = \lambdap=λ ,即 an=pan−1+qpna_n = p a_{n - 1} +qp^nan​=pan−1​+qpn ,不能用构造法求解,而用同除指数法,令两边同时除以 pnp^npn ,得:
    anpn=an−1pn−1+q\dfrac{a_n}{p^n} = \dfrac{a_{n - 1}}{p^{n - 1}} + qpnan​​=pn−1an−1​​+q
    再令 anpn=μn\dfrac{a_n}{p^n} = \mu_npnan​​=μn​ ,可得 μn=μn−1+q\mu_n = \mu_{n - 1} + qμn​=μn−1​+q 。进而用累加法求出数列 {μn}\{ \mu_n\}{μn​} 的通项公式,也就求出了数列 {an}\{a_n\}{an​} 的通项公式。

  • 若 p≠λp \ne \lambdap​=λ ,既可用构造法,也可用同除指数法求出通项公式。构造法的步骤为——构造出 an+xλn=p(an−1+xλn−1)a_n + x\lambda^n = p(a_{n - 1} + x\lambda^{n - 1})an​+xλn=p(an−1​+xλn−1) ,解出 xxx 以构造等比数列,余下步骤相同。


2. f(n)f(n)f(n) 不为常数

为了简便,只讨论 g(n)=0g(n) = 0g(n)=0 时的情况。此时递推式为:
an=f(n)an−1a_n = f(n) a_{n - 1}an​=f(n)an−1​ 显然,前后两项之商为一个有规律的表达式 f(n)f(n)f(n) ,于是可用累乘法求出通项公式。

注意,若 f(n)=pf(n) = pf(n)=p ,则该数列为等比数列,其通项公式也是用累乘法得出来的。

【数学】求一类数列的通项公式相关推荐

  1. matlab 帕多瓦数列 通项公式_斐波那契数列的通项公式及证明

    简介 斐波那契数列是指的这样的一个数列,从第3项开始,以后每一项都等于前两项之和.写成递推公式即: \[a_n=a_{n-1}+a_{n-2}(n \ge 3) \] 假设令\(a_1=1,a_2=1 ...

  2. 特征方程求数列的通项公式(二阶线性递推式)

    特征方程求数列的通项公式(二阶线性递推式) 已知数列{an}\{a_n\}{an​}满足fn=afn−1+bfn−2,a,b∈N,b≠0,n>2,f1=c1,f2=c2,(c1,c2f_n=af ...

  3. 探究斐波那契数列的通项公式

    记得小学的时候数学课本上有过一个兔子的故事,简单来说就是一对小兔子(一公一母)一个月后张成一对大兔子,接下来第二个月生下一对小兔子(也是一公一母),第三个月原本的大兔子再生一对,同时那对小兔子长大了, ...

  4. 高三女生因高中数学知识的数列解题技巧没掌握与梦想大学失之交臂

    高三女生因高中数学知识的数列解题技巧没掌握与梦想大学失之交臂 一漂亮高三女生在走出考场的那一刻已是泪流满面,问其原因竟是高考数学考试有关数列的考题没有能够做对,估计考分达不到自己理想大学的要求,其实高 ...

  5. 高中数学必修五数列知识点总结归纳

    数列是以正整数集为定义域的函数,是一列有序的数.数列中的每一个数都叫做这个数列的项.下面肖博老师给大家分享高中数学必修五数列知识点总结. 一.数列的概念和简单表示法 1.了解数列的概念和几种简单的表示 ...

  6. matlab 帕多瓦数列 通项公式_斐波那契数列的通项公式

    摘要:本文将以斐波那契数列为引子,导出一般的二阶常系数线性递归式的求解问题. 所谓斐波那契数列指的是数列:1,1,2,3,5,8,13,21,--.即数列满足递推公式 ,( ),用语言描述就是后一项等 ...

  7. C语言求Fibonacci数列

    方法有三种甚至更多,但核心思想都是一个数列的通项公式:F(n)=F(n-1)+F(n-2).核心代码放在最后. 方法一:普通法 #include <stdio.h> #include &l ...

  8. c语言求fibonacci数列前20,求fibonacci数列的前20个数之和

    使用数组求Fibonacci数列的前20项.要求4项一行输出. 斐波那契数列通项公式:斐波那契数列指的是这样一个数列:1.1.2.3.5.8.13.21.--这个数列从第三项开始,每一项都等于前两项之 ...

  9. 高中数学必修5_数列专题冲刺985-逆袭高考数学

    很多的同学不知道高考会有什么题型.那些知识点很焦虑,这里老师告诉大家一个方法,就是去翻阅前5年的高考试卷,这样会出什么样的知识点,题型基本上不会有太大的改动!今天给大家分享一个高考的考点数列,老师会从 ...

  10. 菲波那切数列求解通项公式

    菲波那切数列求解通项公式 初等数学解法:https://www.zhihu.com/question/25217301/answer/580609745 高等数学解法:https://www.zhih ...

最新文章

  1. maven开发mybatis 让*.xml 拷贝到classes目录下
  2. Sphinx的介绍和原理探索
  3. Linux加法简单程序,Android应用程序的开发目录——简单的加法计算示例
  4. ZOJ 3735 Josephina and RPG
  5. mysql 学习笔记04 insert与update语句
  6. Android Drawable绘图学习笔记
  7. 天池 在线编程 双向取数(博弈DP)
  8. HTML5- Canvas入门(五)
  9. 你能卖什么,决定了你的收入落在什么档次
  10. 静默安装apk,静默卸载apk
  11. java.io.IOException: Cannot run program “del“: CreateProcess error=2, 系统找不到指定的文件。
  12. paip.图形化编程工具VS WF与JBPM的比较
  13. Shell脚本检测文件夹是否已被挂载的方法
  14. 清算号和联行号有区别吗?区别是什么?
  15. linux关闭桌面快捷键设置,在XFCE4桌面上自定义键盘快捷键的方法
  16. 解决:索引超出范围。必须为非负值并小于集合大小。
  17. NLP | 自然语言处理经典seq2seq网络BERT详解及代码
  18. ONES X 深圳农村商业银行 | 数字化项目管理实践
  19. 物理专业要用的计算机语言,16岁被保送清华,本科毕业进麻省理工读博,现开发Taichi爆红网络...
  20. ABP VNext学习日记24

热门文章

  1. QQ勋章墙工具-支持所有版本完成QQ等级加速
  2. linux蜂鸣器驱动指令,Linux 设备驱动简析—PC蜂鸣器驱动
  3. Secure DFU环境搭建
  4. html的abbr标签,html标签里有个abbr 请问这个标签是肿么使用的
  5. Windows 制作免安装的JAVA环境
  6. 通信算法之九:4FSK调制解调仿真链路
  7. 树莓派CM4设置静态IP地址(已解决)
  8. laravel中faker的方法总结
  9. 史上最全!数据分析进阶教程,看这一篇就够了!
  10. Unity.TimeLine