LeetCode 中 JavaScript 的执行速度靠谱吗?

2018-02-16 15:33:17 +08:00
 iugo

在路上无事, 看看 LeetCode.

感觉 LeetCode 中关于 JavaScript 的测试好随意啊.

一套代码, 仅把 const 替换为 var 就节省了 100ms 左右的时间. 然后将 let 替换为 var 增加了 50ms 左右的时间.

我只能这样猜测, 因为 const 会检查变量是否被重新赋值, 所以耗费了额外的时间, 而 let 比 var 作用域更小, 避免作用域外的声明, 所以省了一些时间.

或许我的猜测只是臆想, 只是对 JavaScript 执行内核(如 V8)不懂造成的. JavaScript 是一种不重视性能的语言, 所以才导致 LeetCode 允许这样的偏差吧.

6042 次点击
所在节点    程序员
9 条回复
bramblex
2018-02-16 16:29:47 +08:00
js 好歹是第二梯队最快的了好吧,v8 jit 命中的时候是接近 c 艹 速度的……

你要整天写反优化的代码,c 艹都救不了你
littlebutt
2018-02-16 16:46:32 +08:00
自己在浏览器控制台写的代码运行都很快,在 leetcode 就变成 internal error 了
pkookp8
2018-02-16 16:54:16 +08:00
应该不准,可能和服务器以及测试用例有关
某题用 c 写的,第二天的测试结果比第一天高
然后看了下排名比我靠前的几个答案,思路也没差多少
0person
2018-02-16 18:40:30 +08:00
leetcode 有 app 么
brickyang
2018-02-16 22:22:20 +08:00
不靠谱,同一段代码点两次提交名次可以出现从 60% 后到 30% 前的波动
pipapa
2018-02-16 23:28:17 +08:00
leetcode 的评测时间一点都不靠谱,一样的代码差距都挺大
hazhaz
2018-02-17 11:42:28 +08:00
最近怎么关于 LC 的主题便多了啊。。。是不是因为有 lccn 啊
LeoEatle
2018-02-18 04:14:38 +08:00
评测时间的确有波动,但是你的算法如果是符合要求的,不可能会 time out。O(logn)的一定比 O(n^2)的容易过
waiaan
2018-02-20 19:03:50 +08:00
怎么在上面找 javascript 的题目?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/430946

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX