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

沈阳网站建设的公司山东关键词网络推广

沈阳网站建设的公司,山东关键词网络推广,b2b的优势和劣势,电子商务网站建设方案的总结累和、累积、斐波拉契 一、累和&#xff08;Sum&#xff09; 1. 定义 累和指将一系列数值依次相加的结果。例如&#xff0c;数列 1,2,3,4 的累和为 123410。 2. C 语言实现 #include <stdio.h>// 计算前n个自然数的累和&#xff08;迭代法&#xff09; int sum_iterative…

累和、累积、斐波拉契

一、累和(Sum)

1. 定义

累和指将一系列数值依次相加的结果。例如,数列 1,2,3,4 的累和为 1+2+3+4=10

2. C 语言实现

#include <stdio.h>// 计算前n个自然数的累和(迭代法)
int sum_iterative(int n) {int sum = 0;for (int i = 1; i <= n; i++) {sum += i;}return sum;
}// 计算前n个自然数的累和(数学公式)
int sum_formula(int n) {return n * (n + 1) / 2;
}int main() {int n = 10;printf("迭代法累和: %d\n", sum_iterative(n));printf("公式法累和: %d\n", sum_formula(n));return 0;
}

3. 性能分析

  • 迭代法:时间复杂度 (O(n)),需遍历 n 次。
  • 公式法:时间复杂度 (O(1)),直接计算。

二、累积(Product)

1. 定义

累积指将一系列数值依次相乘的结果。例如,数列 1,2,3,4 的累积为 1×2×3×4=24(即 4 的阶乘)。

2. C 语言实现

#include <stdio.h>// 计算前n个自然数的累积(迭代法)
int product_iterative(int n) {int product = 1;for (int i = 1; i <= n; i++) {product *= i;}return product;
}// 计算前n个自然数的累积(递归法)
int product_recursive(int n) {if (n == 0) return 1;return n * product_recursive(n - 1);
}int main() {int n = 5;printf("迭代法累积: %d\n", product_iterative(n));printf("递归法累积: %d\n", product_recursive(n));return 0;
}

3. 性能分析

  • 迭代法:时间复杂度 (O(n)),需遍历 n 次。
  • 递归法:时间复杂度 (O(n)),但递归深度为 n,可能导致栈溢出(如 n>10000)。

三、斐波那契数列(Fibonacci)

1. 定义

斐波那契数列满足:(F(0)=0, F(1)=1, F(n)=F(n-1)+F(n-2))(n≥2)。 例如:0, 1, 1, 2, 3, 5, 8, 13, ...

2. C 语言实现

#include <stdio.h>// 方法1:递归法
int fib_recursive(int n) {if (n <= 1) return n;return fib_recursive(n - 1) + fib_recursive(n - 2);
}// 方法2:迭代法(循环)
int fib_iterative(int n) {if (n <= 1) return n;int a = 0, b = 1, c;for (int i = 2; i <= n; i++) {c = a + b;a = b;b = c;}return b;
}// 方法3:矩阵快速幂(高效算法)
void multiply(int F[2][2], int M[2][2]) {int x = F[0][0] * M[0][0] + F[0][1] * M[1][0];int y = F[0][0] * M[0][1] + F[0][1] * M[1][1];int z = F[1][0] * M[0][0] + F[1][1] * M[1][0];int w = F[1][0] * M[0][1] + F[1][1] * M[1][1];F[0][0] = x;F[0][1] = y;F[1][0] = z;F[1][1] = w;
}void power(int F[2][2], int n) {if (n == 0 || n == 1) return;int M[2][2] = {{1, 1}, {1, 0}};power(F, n / 2);multiply(F, F);if (n % 2 != 0) multiply(F, M);
}int fib_matrix(int n) {if (n == 0) return 0;int F[2][2] = {{1, 1}, {1, 0}};power(F, n - 1);return F[0][0];
}int main() {int n = 10;printf("递归法斐波那契: %d\n", fib_recursive(n));printf("迭代法斐波那契: %d\n", fib_iterative(n));printf("矩阵法斐波那契: %d\n", fib_matrix(n));return 0;
}

3. 性能对比

方法时间复杂度空间复杂度适用场景
递归法(O(2^n))(O(n))n 较小(n<30)
迭代法(O(n))(O(1))n 中等(n<10^6)
矩阵快速幂(O(\log n))(O(1))n 极大(n>10^9)

四、常见问题与优化

  1. 整数溢出:累积和斐波那契数列增长极快,需使用 long long__int128 类型。
  2. 递归深度:递归法可能导致栈溢出,建议使用迭代法。
  3. 大数计算:若需处理极大数值(如 n=1000),需使用高精度库(如 GMP)。

五、应用场景

  • 累和:计算平均数、等差数列求和。
  • 累积:计算排列组合数、概率问题。
  • 斐波那契数列:生物生长模型、黄金分割、动态规划。
http://www.dtcms.com/wzjs/127943.html

相关文章:

  • 网站推广营销联系方式长沙网站制作关键词推广
  • 全网网络营销推广火热招商中企业网站优化方案
  • 宁波企业黄页公司黄页深圳seo公司助力网络营销飞跃
  • 互联网行业招聘网站产品策划方案怎么做
  • 本地网站可以做吗日本搜索引擎
  • 那个网站的是做vb题目的百度推广手机登录
  • 做网站属于什么职位广州seo学徒
  • 买了虚拟主机怎么建设网站网站怎么快速排名
  • 安徽金开建设集团网站怎么快速刷排名
  • 建设网站时怎么用外部字体市场seo是什么
  • 网站怎么做配置文件夹智能营销方法
  • 如何用css做网站百度推广开户流程
  • 网站推广公司汉狮网络百度站长链接提交
  • 杭州关键词排名工具seo网站关键词优化快速官网
  • 企业网站制作公司盈利小红书推广方式有哪些
  • 网站开发网络公司兼职百度推广账户优化
  • 链接分析属于网站开发长沙优化网站哪家公司好
  • 朋友圈网站怎么做的网站建设公司seo关键词
  • 装修公司怎么做网站推广安卓手机优化软件排名
  • 自助网站建设北京网站建设专业公司
  • 保亭县住房城市建设局网站网络营销的主要方式
  • wordpress加站点描述企业网络营销成功案例
  • 电商网站建设怎么样360站长平台链接提交
  • 建个普通网站新站整站快速排名
  • 天津网站制作的公司哪家好提升seo排名平台
  • 淘宝做链接有哪些网站可以做100个商业经典案例
  • 阿里巴巴网站维护要怎么做链接提交工具
  • 怎么建设网站买链接网站
  • 做聊天室cpa用什么类型的网站好seo是什么服务
  • 家做网站怎么出售友情链接