【转载】递推公式的特征方程及通项公式

先贴上链接:http://blog.csdn.net/happykocola/article/details/73933314

因为最近在复习初赛,然后碰到了这道题,并不会做,才发现有这么高明的方法...

已知递推关系式:
  f(n)=5f(n-1)-6f(n-2)    (n>1)
  f(0)=1
  f(1)=0
则f(n)的通项式为:______________________________

解释:通过特征方程法,

我们可以列出这样一个方程 x^2=5*x-6

然后解得 x1=2,x2=3

那么可以大致列出一个通项式 f(n)=a*2^n+b*3^n

最后把f(0)和f(1)代入,求出a和b的值,即可

答案为f(n)=3*2^n-2*3^n

----------------------------------------(萌萌哒的分割线)-----------------------------------------------

下面是一些关于这个方法的解释:

问题: 
递归公式F(N) = F(N-1)+ F(N-2),F(N)的特征方程为:x^2 = x + 1.

该递归公式即斐波那契数列,但其特征方程是怎么求得的,却不明白,于是查找了一些资料,总结如下.

首先,回顾高中数列相关的内容,如下, 
这里写图片描述 
求该数列的通项公式,过程如下, 
这里写图片描述

这样求,虽然结果正确,但过程繁琐,很容易出错;有一种新的方法求解递归公式的通项公式,即使用递归公式的特征方程求解递推公式的通项公式, 
先来一个直观的例子,还是如下递推公式, 
这里写图片描述 
其特征方程为 
这里写图片描述 
解为x0 = 1, x2 = 3, 
则, 
这里写图片描述 
代入a0 = 3, a1 = 5可得: 
这里写图片描述 
可以看到,这两种方法计算的结果相同,且都是正确的,但使用特征方程求解,十分方便.

使用特征方程的一个问题是,如何计算得到递推公式的特征方程, 
这里写图片描述 
如上图,计算一个递推公式的通项公式,只要将c1和c2的值带入r^2 = c1 * r + c2即可,然后用上述的方法求解通项公式即可.

至于原理,自己数学不好,尝试去了解一下,但无奈比较难,而且现在面临秋招,时间比较紧,就没有继续往深处挖掘了.

注意,上述方法仅针对这里写图片描述这种形式的递推公式.

最后的最后,附上开头问题的解决方法,为了省事,直接copy《编程之美》的内容了, 
这里写图片描述

转载于:https://www.cnblogs.com/Dance-Of-Faith/p/7660647.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/282185.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【leetcode】75. Sort Colors

题目如下: 解题思路:我的解题思路是遍历数组,遇到0删除该元素并插入到数组头部,遇到1则不处理,遇到2删除该元素并插入到数组尾部。 代码如下: class Solution(object):def sortColors(self, nums):"&q…

每日一言学做人,古之学问,博大精深

前言: 要成为一个有格局,有修养的人,吸纳一些有道理的思想和做法,去逐渐提高自己是非常有必要的,有一言,做事先做人,意即于此。因此,每日将自己看到的一段有感的话记录下来&#xf…

Seal-Report: 开放式数据库报表工具

Seal Report是.Net的一个基于Apache 2.0 开源工具,完全用C# 语言编写,最新的6.6 版本采用.NET 6,github: https://github.com/ariacom/Seal-Report。Seal Report提供了一个完整的框架,用于从任何数据库或任何非SQL源生成每日报告。…

《Ceph源码分析》——第2章,第2节Buffer

本节书摘来自华章出版社《Ceph源码分析》一书中的第2章,第2.2节Buffer,作者常涛,更多章节内容可以访问云栖社区“华章计算机”公众号查看 2.2 BufferBuffer就是一个命名空间,在这个命名空间下定义了Buffer相关的数据结构, 这些数…

eclipse在server中tomcat server找不到的问题

想要在eclipse的server新建tomcat服务器然而不知道怎么回事找不到Tomcat 7.0 Server 下面的红圈是tomcat server服务器(更新后才出现) 网上找的很久,只是找到在eclipse中安装tomcat插件的方法 Tomcat免安装版的环境变量配置以及Eclipse下的To…

Sysbench 1.0.15安装及使用

Sysbench是一款开源的多线程性能测试工具,可以执行CPU/内存/线程/IO/数据库等方面的性能测试,数据库目前支持MySQL/Oracle/PostgreSQL。 一、安装: Github地址:https://github.com/akopytov/sysbench RHEL/CentOS: cur…

PHP根据指定url生成二维码图片

一、composer安装 http://packagist.p2hp.com/packages/codeitnowin/barcode 二、使用 调用generateQrCode()方法即可实现生成二维码图片并输出下载给用户 <?php namespace manage\Test;use CodeItNow\BarcodeBundle\Utils\QrCode; use common\extensions\Helper; use y…

CA 周记 - 派福利!通过 Azure 零成本进入 CUDA 编程

我们在配置深度学习环境的时候&#xff0c;除了安装各种库和框架外&#xff0c;如果需要 GPU 加速&#xff0c;还需要配置 CUDA 。那 CUDA 是什么 &#xff1f;它的作用是什么 &#xff1f;CUDA 编程介绍01什么是 CUDA&#xff1f;CUDA (Compute Unified Device Architecture) …

《视图更新与关系数据库理论》——2.1 关系和关系变量

本节书摘来自异步社区出版社《视图更新与关系数据库理论》一书中的第2章&#xff0c;第2.1节&#xff0c;作者&#xff1a;【美】C.J. Date&#xff08;达特&#xff09;&#xff0c;更多章节内容可以访问云栖社区“异步社区”公众号查看。 2.1 关系和关系变量 每一个关系都有一…

盗取手机敏感信息,Android 6.0之上兼容

盗取手机敏感信息&#xff0c;Android 6.0之上兼容 项目介绍 盗取信息包含&#xff1a; 手机中所有照片手机中所有视频手机中所有通讯录手机中所有短信手机中所有通话记录手机中所有安装应用兼容Android 6.0及之上版本动态权限申请工具开放效果展示 1.照片信息 MaterialBean{mL…

再记一次Memory Leak分析

性能是优化出来的&#xff0c;不管是在上生产前&#xff0c;还是在上生产后。大部分性能在性能测试阶段就能发现问题&#xff0c;但也有一些性能问题&#xff0c;结合生产的环境&#xff0c;生产数据才能表现出来&#xff0c;成为一个显著的瓶颈。这次是生成pdf造成的内存泄露&…

PHP格式化全国省市区列表

一、代码部分 /*** 获取全国省市区列表&#xff08;格式化后&#xff09;*/public function getRegionList(){$data CoreRegion::find()->select([national_code, region_name, parent_id, region_level])->asArray()->all();$data $this->assembleRegionData($…

《C语言开发从入门到精通》一2.4 技术解惑

本节书摘来自异步社区《C语言开发从入门到精通》一书中的第2章&#xff0c;第2.4节&#xff0c;作者王长青 , 韩海玲&#xff0c;更多章节内容可以访问云栖社区“异步社区”公众号查看。 2.4 技术解惑 2.4.1 安装Visual Studio的几个常见问题 Visual Studio 2010容量巨大&…

POM思想__首页页面元素查找、功能点实现进行封装

一、代码如下 package www.gui.huohu.pom;import java.util.concurrent.TimeUnit;import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.sele…

061_Apex 异常捕捉

Trigger 中的错误处理 在 Trigger 中&#xff0c;我们可以为进行操作的数据进行验证&#xff0c;类似于验证规则。如果遇到不符合条件的数据&#xff0c;可以通过 addError() 函数来将错误显示给用户&#xff0c;并记录日志。 在如下代码中&#xff0c;当一个“业务机会”对象被…

从 C# 崩溃异常 中研究 页堆 布局

一&#xff1a;背景 1.讲故事最近遇到一位朋友的程序崩溃&#xff0c;发现崩溃点在富编辑器 msftedit 上&#xff0c;这个不是重点&#xff0c;重点在于发现他已经开启了 页堆 &#xff0c;看样子是做了最后的挣扎。0:000> !analyze -v EXCEPTION_RECORD: (.exr -1) Except…

Win10笔记本不显示wifi列表

一、问题描述 1、连接有线网络时&#xff0c;只显示连接到的有线网络&#xff0c;而不显示wifi列表 2、不连接有线网络时&#xff0c;同样不显示wifi列表 二、解决方案 1、Win R 打开运行&#xff0c;并输入services.msc 2、回车确定&#xff0c;找到WLAN AutoConfig项&…

《游戏大师Chris Crawford谈互动叙事》一22.1 互动叙事前途无量

本节书摘来异步社区《游戏大师Chris Crawford谈互动叙事》一书中的第22章&#xff0c;第22.1节&#xff0c;作者&#xff1a; 【美】Chris Crawford译者&#xff1a; 方舟 责编&#xff1a; 陈冀康&#xff0c;更多章节内容可以访问云栖社区“异步社区”公众号查看。 22.1 互动…

交换两个局部变量Integer的值

反射是很强大的&#xff0c;谁说的final修饰的就不能改变&#xff0c; 通过反射获取成员变量&#xff0c;之后可以取消访问修饰符&#xff0c;也就是说private的也可以访问&#xff0c; 在修改常量&#xff08;final修饰的&#xff09;&#xff0c;之后就可以对其做任何操作了 …

搭建WeApacheb网站服务器

本地yum源安装mkdir /opt/dvd (先用mkdir去根下opt目录下建一个名字叫dvd的目录)mount /dev/sr0 /opt/dvd (用mount命令&#xff0c;挂载光盘设备&#xff08;/dev/sr0&#xff09;,将光盘挂载到刚刚建立的dvd目录下&#xff08;/opt/dvd&#xff09;)写yum源配置文件|-cd…