【发布时间】:2011-12-29 14:13:38
【问题描述】:
我知道在大多数情况下取幂是 O(log n) 或更糟,但我在试图理解数字如何表示自己时迷失了方向。以 JavaScript 为例,因为它有多种原生数字格式:
100000 === 1E5 && 100000 === 0303240
>>> true
在内部,它们最终不都作为二进制值存储在内存中并被操作吗?如果是这样,机器是否能够像存储八进制一样快地存储十进制和科学记数法表示?
因此,您认为+("1E" + n) 会比Math.pow(10, n) 快吗?
这个问题主要是关于 1E(n) 是如何工作的,但在尝试自己思考答案时,我对如何首先解析和存储数字变得更加好奇。如果您能提供任何解释,我将不胜感激。
【问题讨论】:
标签: javascript algorithm numbers exponent