有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何快速计算2^x?

我正在读一篇论文,其中的问题是:“如何快速计算2^X”? 论文中的建议答案:“1<;<;X”

当然,这似乎不是正确的答案,因为我已经尝试过类似的方法

2 ^ 9 = 11

1 << 9 = 512

想知道——有人能认为我在这里遗漏了什么逻辑或者作者在这里真的错了吗


共 (2) 个答案

  1. # 1 楼答案

    我认为你误解了2^x是指“两个x与x的XORed”,而意图可能是2x。在这种情况下,1 << x是计算2x的好方法。不幸的是,在键入纯文本时,^通常用来表示幂运算,但是在C、C++和java的上下文中,^表示XOR运算符。(对于新的C/C++/Java程序员来说,这也是一个简单的陷阱!)

    希望这有帮助

  2. # 2 楼答案

    29是512

    So 1<&书信电报;9做正确的事