memoization 相关问题

在计算中,memoization是一种优化技术,主要用于通过函数调用来避免重复计算先前处理的输入的结果来加速计算机程序。

如何将向量存储为地图的键[重复]

我想记住需要两个 int 的函数的返回结果。我知道我可以将向量转换为像 1-2 这样的字符串,但是还有其他方法吗? 我尝试将数组设置为地图但是...

回答 2 投票 0

如何在不使用嵌套映射的情况下将向量存储为映射的键[重复]

我想记住需要两个 int 的函数的返回结果。我知道我可以将向量转换为像 1-2 这样的字符串,但是还有其他方法吗? 我尝试将数组设置为地图但是...

回答 2 投票 0

有没有办法将向量存储为Javascript映射中的键? [重复]

我想记住需要两个 int 的函数的返回结果。我知道我可以将向量转换为像 1-2 这样的字符串,但是还有其他方法吗? 我尝试将数组设置为地图但是...

回答 1 投票 0

在测试期间访问`beforeAll`设置的值

这是我得到的: 规格 :: 规格 规格=做 经理 <- runIO newManager it "foo" $ do -- code that uses manager it "bar" $ do -- code that usees manager The docs for runIO sug...

回答 1 投票 0

为什么棋盘中骑士概率的解法是错误的?

leetcode 的问题陈述 - https://leetcode.com/problems/knight-probability-in-chessboard/ 基本上,骑士从给定的位置开始,随机选择 8 个可能的动作中的 1 个。它使...

回答 1 投票 0

如何在 SciPy 中预先计算冻结随机变量的常量?

我定义了一个自定义连续分布,并实现了 _pdf 和 _cdf 方法。 对于这些,我需要计算昂贵的常数(给定参数),即标准化常数 fo...

回答 1 投票 0

使用 Memoization 解决 Grid Traveler 问题时出现奇怪的值?

我正在学习动态编程,我刚刚开始解决一些简单的问题。我正在做一个网格旅行者问题,你从网格的左上角开始,你只能向左移动或做...

回答 2 投票 0

React 的 ESLint:是否有规则来检测需要 useMemo 的 props?

使用 React,在功能组件返回的 JSX 代码中我可以得到: 我的组件.jsx 或者 通过 React,在功能组件返回的 JSX 代码中我可以得到: MyComponent.jsx <MySubComponent props1={{a: 0, b:1}}/> OR <MySubComponent props2={["toto", "tata"]}/> 我的子组件是通过记忆导出的: MySubComponent.jsx export default React.memo(MySubComponent) 但是这会破坏记忆,因为格式为 {{...}} 或 {[...]} 的 props 每次都会实例化一个新的对象/数组(相同的值,但不同的内存地址) ,因此 React.memo 的 propsshallow-compare 看到它不同。 有没有 ESLint/JSLint 规则来检测这些类型的 props ? 您可以使用 useMemo 来记忆对象或数组并将其作为 props 传递给 MySubComponent,如下所示: const obj = React.useMemo(() => ({a: 0, b:1}), []); <MySubComponent props1={obj}/> 在 SubComponent.jsx 中 export default React.memo(MySubComponent); 这只适用于简单的对象。 由于您已经知道该问题,因此不需要 eslint 来识别它,除非这是一个重复的模式。看来你已经过了发现阶段了。 我建议选择以下两个选项之一: 使用自定义函数覆盖 React.memo(Component, isEqual) 的第二个参数,您可以在其中按值比较输入数组或对象,因此只要内容保持不变,更改 prop 引用就变得无关紧要。但是,如果您广泛地重新渲染该组件,这可能会成为一种开销。 您的另一个选择是在组件外部定义数组和对象,并继续传递修改后的内容,但保持引用相同。 是的,存在一个插件:eslint-plugin-react-perf -> https://www.npmjs.com/package/eslint-plugin-react-perf

回答 3 投票 0

递归、记忆和动态编程之间有什么区别? [重复]

相关问题: 动态编程和记忆:自上而下与自下而上的方法 我已经阅读了很多关于此的文章,但似乎无法理解它。有时递归和动态...

回答 5 投票 0

为 go 函数添加缓存,就好像它是静态成员一样

假设我有一个昂贵的函数 func 非常昂贵的函数(int) int 并且这个函数会因为同一个号码而被多次调用。 有没有一个好方法可以让这个函数存储以前的结果......

回答 4 投票 0

尽早突破开始/结束块

我想要一种方法来退出开始/结束块,同时仍然分配其结果分配给的变量。 定义 foo @foo ||= 开始 加上“运行” 如果为 true,则返回“提前离开”# 将是...

回答 2 投票 0

Java记忆方法

我遇到了一个有趣的问题,想知道是否以及如何在 Java 中完成此操作: 创建一个可以记住任何函数/方法的方法。该方法具有以下参数:我...

回答 3 投票 0

如何使用递归和记忆来了解一个字符串是否是其他两个字符串的组合?

考虑 2 个字符串: 一个=“wxy” b =“mnop” z =“wmxnoyp” 如果字符串 z 是字符串 a 和 b 的组合,且字符串 z 的长度等于...

回答 1 投票 0

最长公共子序列记忆

我尝试优化最长公共子序列问题的递归解决方案,但遇到了一些问题 我尝试这样做: 缓存={} def lcs1(s1,s2,i=0,j=0): 如果 i>=len(s1) 或 j>=len(s2): ...

回答 1 投票 0

DP 数组第 0 个元素初始化为 1 而不是 0

在使用下面的解决方案(取自https://emre.me/coding-patterns/staircase/)解决climbStairs问题(请参阅此处)时,我假设 dp 数组的每个值表示可以采取的方式数量。 ..

回答 1 投票 0

使用useCallback规则react-hooks/exhaustive-deps和过度优化

有很多关于eslint规则react-hooks/exhaustive-deps的帖子,还有关于记忆化钩子useMemo和useCallback的良好用法,它们通常被过度使用,但我...

回答 1 投票 0

NextJS 13 获取请求记忆

我正在使用 NextJS 13 开发 React 项目,并且在使用请求记忆进行获取时遇到问题。即使在同一个请求中,它也总是向后端发送请求。 我有一个简单的端点...

回答 1 投票 0

使用 useMemo 挂钩时重新渲染问题

const sum = useMemo(() => a + b, [a, b]) 当a和b互换时会发生什么。就像当前渲染中 a = 5、b = 10 一样。当a=10,b=5时会发生什么?会在...之后重新渲染吗

回答 1 投票 0

如何优化 React 中大量项目的渲染?

我有一个 React 组件,它使用 map 方法渲染大量项目(大约 1000 个)。每个项目都是一个复杂的组件,有自己的状态和属性,并且可以由用户更新。

回答 1 投票 0

Node.js 与 Rust,但 Node.js 更快 [已关闭]

我有一个名为 网格 这是来自动态规划问题“网格旅行者”。我用 JavaScript 和 Rust 编写了两次相同的函数,并对 1000 万次计算进行了基准测试

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.