当前位置: 首页 > news >正文

网站推广需求要素深圳推广系统

网站推广需求要素,深圳推广系统,佳木斯城乡建设局网站,网网站建设的公司递推算法及常见示例(C、Python实现) 递推算法是一种用若干步可重复运算来描述复杂问题的方法,它是一种序列计算中的常用算法。通常是通过计算前面的一些项来得出序列中的指定项的值。其思想是把一个复杂的庞大的计算过程转化为简单过程的多次…

递推算法及常见示例(C++、Python实现)

递推算法是一种用若干步可重复运算来描述复杂问题的方法,它是一种序列计算中的常用算法。通常是通过计算前面的一些项来得出序列中的指定项的值。其思想是把一个复杂的庞大的计算过程转化为简单过程的多次重复,该算法利用了计算机速度快和不知疲倦的机器特点。递推关系通常表示为一种递推公式。

下面是一些常见的例子。

★斐波那契数列:斐波那契数列指的是这样一个数列:0,1,1,2,3,5,8,13,21,34,55,89...

这个数列从第3项开始,每一项都等于前两项之和。

斐波那契数列是一种经典的递推问题,它的定义是:f(0)=0,f(1)=1,f(n)=f(n-1)+f(n-2)。通过这个递推关系式,可以求解斐波那契数列的第 n 项。

☆C++实现:

#include <iostream>  
using namespace std;  int main() {  int n;  cout << "请输入项数 n 的值: ";  cin >> n; if (n <= 1) {  return n;  }  int f1 = 0, f2 = 1, fn;  for (int i = 2; i <= n; i++) {  fn = f1 + f2;  f1 = f2;  f2 = fn;  }  cout << "斐波那契数列的第 " << n << " 项为:" << fn << endl;  return 0;  
}

下面改用使用自定义函数实现:

#include <iostream>  
using namespace std;  int fibonacci(int n) {  if (n <= 1) {  return n;  }  int f1 = 0, f2 = 1, fn;  for (int i = 2; i <= n; i++) {  fn = f1 + f2;  f1 = f2;  f2 = fn;  }  return fn;  
}  int main() {  int n;  cout << "请输入项数 n 的值: ";  cin >> n;  cout << "斐波那契数列的第 " << n << " 项为:" << fibonacci(n) << endl;  return 0;  
}

☆Python实现:

n = int(input("请输入 n 的值:"))
if n <= 1:  fn = nf1, f2 = 0, 1 for i in range(2, n+1):  fn = f1 + f2  f1, f2 = f2, fnprint("斐波那契数列的第 {} 项为:{}".format(n, fn))

下面改用使用自定义函数实现:

def fibonacci(n):  if n <= 1:  return nf1, f2 = 0, 1 for i in range(2, n+1):  fn = f1 + f2  f1, f2 = f2, fn  return fn  n = int(input("请输入 n 的值:"))  
print("斐波那契数列的第 {} 项为:{}".format(n, fibonacci(n)))

★等差数列求和: 1, 3, 5, 7, 9 是一个公差为 2 的等差数列。等差数列的求和问题可以通过递推算法解决。设等差数列的首项为 a1,公差为 d,第 n 项为 an,则 an=a1+(n-1)d。要求等差数列的前 n 项和,可以递推得到:Sn=a1+a2+...+an=n/2[2a1+(n-1)d]。

☆C++实现:

#include <iostream>  
using namespace std;int main() {  int a1, d, n;  cout << "输入第一项、公差和项数:";  cin >> a1 >> d >> n;  int sum = 0;  for (int i = 1; i <= n; i++) {  sum += a1 + (i - 1) * d;  }  cout << "等差数列的前 " << n << " 项和为:" << sum << endl;  return 0;  
}

☆Python实现:

a1 = int(input("输入第一项: "))  
d = int(input("输入公差: "))  
n = int(input("输入项数: "))  
sum = 0  
for i in range(1, n+1):  sum += a1 + (i - 1) * dprint("等差数列的前 {} 项和为:{}".format(n,sum))

★等比数列求和:1, 2, 4, 8, 16 是一个公比为 2 的等比数列。等比数列的求和问题也可以通过递推算法解决。设等比数列的首项为 a1,公比为 r,第 n 项为 an,则 an=a1r^(n-1)。要求等比数列的前 n 项和,可以递推得到:Sn=a1(1-r^n)/(1-r)。

☆C++实现:

#include <iostream>
#include <cmath> // 引入 pow()
using namespace std;int main() {    double a1, r, n;    cout << "输入第一项、公比和项数:";    cin >> a1 >> r >> n;    double sum = 0;    for (int i = 1; i <= n; i++) {    sum += a1 * pow(r, i - 1);    }    cout << "等比数列的前 " << n << " 项和为:" << sum << endl;    return 0;    
}

☆Python实现:

a1 = float(input("输入第一项:"))  
r = float(input("输入公比:"))  
n = int(input("输入项数:"))  sum = 0  
for i in range(1, n + 1):  sum += a1 * (r ** (i - 1))  print("等比数列的前 {} 项和为:{}".format(n, sum))

、递推、递归和迭代区别

递推是通过已知序列元素来计算其他元素,递归是函数调用自身,迭代是通过重复执行操作来解决问题。

递归和迭代可参见:https://blog.csdn.net/cnds123/article/details/132409886

http://www.yidumall.com/news/20092.html

相关文章:

  • 做网站多长时间抖音关键词搜索排名
  • 有什么网站是layui做的成都官网seo服务
  • 网站编程用什么语言好网站排名优化首页
  • 哈尔滨建站服务网站开发国内新闻摘抄2022年
  • php网站开发流程图微信怎么引流营销呢
  • 手机怎么制作ppt小璇seo优化网站
  • 旅游网站设计源码外贸独立站怎么建站
  • 长沙销售公司 网站如何利用互联网宣传与推广
  • 南昌简单做网站钓鱼网站制作教程
  • 和老妇做爰视频网站app推广平台放单平台
  • 焦作音响网站建设seo图片优化的方法
  • 重庆网站租赁空间nba最新比赛直播
  • 淄博免费网站建设全国疫情高峰感染进度查询
  • 武汉外贸网站建设公司seo店铺描述例子
  • 沈阳外贸网站制作公司沈阳百度seo关键词优化排名
  • 乐清本地网站网络营销这个专业怎么样
  • 福州培训网站建设123网址之家
  • 网站分类主要有哪些东莞网站建设平台
  • 成立一间网站开发公司关键词排名查询工具
  • 无锡网站建设设计百度助手app下载
  • 免费咨询法律援助该打什么电话关键词排名优化如何
  • 做胎压的网站推广服务公司
  • 苏州大型网站建设seo软件优化
  • 网站做的好看的seo有名气的优化公司
  • 网站系统的设计与实现百度新站关键词排名
  • 男女做那事是什 网站注册推广赚钱一个10元
  • rest api 做网站学网络营销
  • 燕郊医疗网站建设全网营销推广平台
  • 赣州兼职网站建设重庆seo优化推广
  • 网站改版设计方案搜索引擎查重