我对辅助空间复杂性有点迷失。
在我参加的讲座中,讲师指出字符串的空间复杂度为 O(n),因为字符串的长度 (n) 会有所不同。但诸如数字、布尔值、未定义等原语具有恒定的空间复杂度 O(1)。
我很困惑,因为如果字符串的空间长度不同,那么数字也不一样吗?因为它们也会有不同的“长度”?
我确实理解布尔值和未定义的复杂度是 O(1),我的意思是真/假、未定义和 null 是与长度无关的实例。
如果有人能为我澄清这一点,我将不胜感激。
我对使用无头 CMS Strapi 还很陌生。我正在尝试将一些数据填充到我的数据库中,就像将 knex 与 Node js 一起使用一样,但是,我不确定是否要这样做。我看过一个教程,其中在 中config/functions/bootstrap.js,我们将使用module.export一个异步函数来填充数据;我已经像这样定义了我的代码:
"use strict";
const data = [
{
title: "string",
description:"string",
director: "string",
assistantDirector: "string",
directorOfPhotography: "string",
firstAc: "string",
sound: "string",
thumbnail: "",
images: "",
hairAndMakeUp: "string",
productionAssistant: "string",
writer: "string",
cast: "string",
video: "string",
dateFilmed: 2020,
}];
module.exports = async () => {
data.forEach(reel => {
await strapi.services.reel.create({
title: reel.title,
description: reel.description,
director: reel.director,
assistantDirector: reel.assistantDirector,
directorOfPhotography: reel.directorOfPhotography,
firstAc: reel.firstAc,
sound: reel.sound,
hairAndMakeUp: reel.hairAndMakeUp,
productionAssistant: reel.productionAssistant, …Run Code Online (Sandbox Code Playgroud) 我正在研究Leetcode Two Sums问题:“给定一个整数数组,返回两个数字的索引,使它们相加为特定目标。”。这就是我所拥有的:
def two_sum(nums, target)
hash = {}
nums.each_with_index do |num, index|
diff = target - num
if hash[diff]
return [hash[diff],index]
else
hash[num] = index
end
end
end
Run Code Online (Sandbox Code Playgroud)
该代码有效,但是,我不太确定为什么会这样。
所以我明白,在每个语句中,它遍历数字并找到差异。例如,
nums = [4,2,5,1]
target = 6
Run Code Online (Sandbox Code Playgroud)
在第一个循环中,差异是 6-2 = 4。但是哈希显然是空的,因此它将注册 num 作为键,以当前索引作为值。因此哈希是,
hash = {
4: 0
}
Run Code Online (Sandbox Code Playgroud)
在第二个循环中,差异是 6-4 = 2。hash[4] 为 nil,因此它将当前 num 和 index 添加到字典中。
hash = {
4: 0
2: 1
}
Run Code Online (Sandbox Code Playgroud)
像这样,这不会继续将 nums 添加到哈希中,因为至少在这种情况下没有匹配的键值对吗?
也许我把事情复杂化了。如果有人可以 eli5,我将不胜感激。谢谢!
我有一个部署在 Netlify 上的网站: https ://hungry-mclean-362570.netlify.com/
Github: https: //github.com/shindosu/mutsuki-portfolio-client
为了提供一些背景知识,该应用程序由 React JS 提供支持。在 的主页中<div id="right-side">,我呈现了两个 React 组件。它们均由三个 JS 提供支持,并且通过 GSAP 通过图像过渡动画在两张图片之间无限交替。因此,我总共在右侧渲染了 4 个图像。图像大小总计约为 13MB(更多图像即将推出)
我还有一个滑块,如果该值命中,>=50则样式和图像将发生变化,让用户知道他们正在查看的图像的“类别”。
现在,它还没有完成,所以不要介意不完整。让我困扰的是图像的加载时间(由三个 JS、GSAP 处理)加载时间非常长,我认为这也影响了其他元素的加载时间。
我怎样才能加快加载过程?我尝试减小图像大小(之前是 60MB..现在是 13MB!);我试图撕碎更多,但我最多能达到 600~KB/img 左右,而不会损失任何实质性的质量。
还有其他方法可以解决这个问题吗?这将是一个投资组合网站,因此项目页面中将包含更多图像,因此我假设如果我继续我现在正在做的方式,结果将与我的页面一样或更糟糕正在努力。
感谢您的时间!