news 2026/5/8 11:12:40

浅谈:算法中的斐波那契数(三)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
浅谈:算法中的斐波那契数(三)

方法二:记忆化自底向上的方法

自底向上通过迭代计算斐波那契数的子问题并存储已计算的值,通过已计算的值进行计算。减少递归带来的重复计算。

算法

  • 如果 N 小于等于 1,则返回 N。
  • 迭代 N,将计算出的答案存储在数组中。
  • 使用数组前面的两个斐波那契数计算当前的斐波那契数。
  • 知道我们计算到 N,则返回它的斐波那契数。

Java 实现

class Solution { public int fib(int N) { if (N <= 1) { return N; } return memoize(N); } public int memoize(int N) { int[] cache = new int[N + 1]; cache[1] = 1; for (int i = 2; i <= N; i++) { cache[i] = cache[i-1] + cache[i-2]; } return cache[N]; } }

Python 实现

class Solution: def fib(self, N: int) -> int: if N <= 1: return N return self.memoize(N) def memoize(self, N: int) -> {}: cache = {0: 0, 1: 1} # Since range is exclusive and we want to include N, we need to put N+1. for i in range(2, N+1): cache[i] = cache[i-1] + cache[i-2] return cache[N]
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/4 12:42:00

未来已来,“科技+数字” 让展览更互动、更智能!

在科技浪潮汹涌澎湃、数字技术日新月异的当下&#xff0c;传统展览模式正经历着一场前所未有的深刻变革。“科技 数字”的融合&#xff0c;如同为展览行业注入了一股强大的创新动力&#xff0c;让展览告别了以往单向的信息传递模式&#xff0c;变得更加互动、更加智能&#xf…

作者头像 李华
网站建设 2026/4/30 17:52:32

AI数字人赋能:文博展厅数字化转型的“智变”路径

在元宇宙与AIGC技术浪潮的推动下&#xff0c;文博展厅正经历从“静态陈列”到“智慧交互”的颠覆性变革。AI数字人作为核心载体&#xff0c;通过拟人化交互、多模态感知与数据驱动决策&#xff0c;重构了人、空间与信息的关系&#xff0c;为文化传播开辟了沉浸式、个性化、可持…

作者头像 李华
网站建设 2026/5/3 17:59:07

Kafka 技术架构与核心原理深度解析

本文将深入探讨 Apache Kafka 的核心概念、架构设计以及其在消息处理方面的优势。 1. Kafka 简介 Kafka 是一个高性能的分布式流媒体平台。它作为集群运行在多台服务器上&#xff0c;提供极高的可用性和容错性。 在 Kafka 中&#xff0c;数据是以**流&#xff08;Stream&#x…

作者头像 李华
网站建设 2026/4/30 23:36:41

【资深架构师亲授】:Rust-PHP扩展多版本适配的7大黄金法则

第一章&#xff1a;Rust-PHP扩展多版本适配的核心挑战在构建基于 Rust 编写的 PHP 扩展时&#xff0c;实现对多个 PHP 版本的兼容性支持是一项关键且复杂的技术任务。由于不同 PHP 版本&#xff08;如 7.4、8.0、8.1 及更高版本&#xff09;在 Zend 引擎 API 层面存在结构性差异…

作者头像 李华