关于C++中的移位运算符

ven*_*rty 3 c++ bit-shift bitwise-operators

我正在寻找C++中的大代码库.有如下提到的线

int capacity( ) const
{
    return ( 1 << theTrees.size( ) ) - 1;
}
Run Code Online (Sandbox Code Playgroud)

在这里,树是

vector<int> theTrees
Run Code Online (Sandbox Code Playgroud)

什么是1 << theTrees.size( )可能试图实现的声明?假设我们的树大小为25个元素.

JB.*_*JB. 6

如果你的问题是关于C++:1<<通常被认为是"2**N*th power".

如果您的问题是关于数据结构理论:高度为n的二叉树每层最多有2 ^ i个节点,总共最多2 ^ n - 1个节点.
(但你应该用这种方式标记)

  • @venkysmarty高度为*n*的二叉树,每个级别最多有*2 ^ i*个节点,总计最多*2 ^ n-1*个节点. (2认同)