如何解决针对代码大战优化Javascript功能
我有一个this上的codewars.com问题的解决方案,当我在编辑器中运行该问题时可以解决该问题(成功完成编码的代码战中的所有测试用例),但是当我尝试提交时,我得到了此错误:
进程已终止。完成时间超过12000毫秒
为什么我的代码超时?
我们的服务器配置为仅允许一定时间来执行您的代码。在极少数情况下,服务器可能会承担过多的工作,并且根本无法有效地运行您的代码。尽管在大多数情况下,此问题是由效率低下的算法引起的。如果您多次看到此错误,则应尝试进一步优化代码。
该函数的目标是从1到n进行计数,并计算出其中有9的数字。如果数字中有多个“ 9”(例如99),则该人员有两个9 这是我现在拥有的代码:
function number9(n){
let numArray = [];
let split = [];
for (let i = 0; i <= n; i++) {
const split = i.toString().split("");
if (split.includes("9")) {
const joinArray = split.join("");
numArray.push(...joinArray.split(""));
}
}
let finalArray = [];
for (let element of numArray) {
if (element === "9") {
finalArray.push(element);
}
}
return finalArray.length;
}
我是算法新手,正在尝试开发自己的leetcode游戏。我确实看到嵌套循环(例如循环中的include())会导致效率低下,但我正在努力对其进行优化。欢迎任何建议。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。