这个建筑会做什么?

时间:2010-01-17 23:33:12

标签: c++ operators

std::vector<int> a;
int p;
int N;

// ...

p = a[ N>>1 ];

N>>1部分是什么?

2 个答案:

答案 0 :(得分:6)

将N除以2(通过右移1)并将其作为矢量a的索引来分配p。

答案 1 :(得分:1)

看起来它将p设置为a的中间元素。如果a被排序,它将是中值元素,并且可以是二进制搜索算法的一部分。