【发布时间】:2015-03-17 18:34:28
【问题描述】:
如果有任何 STL 算法产生与以下代码相同的结果,我正在徘徊:
std::vector<int> data;
std::vector<int> counter(N); //I know in advance that all values in data
//are between 0 and N-1
for(int i=0; i<data.size(); ++i)
counter[data[i]]++;
此代码仅输出我的整数数据的直方图,预定义的 bin 大小等于 1。
我知道我应该尽可能避免循环,因为 STL 算法的等效算法比大多数 C++ 程序员可能想出的优化得更好。
有什么建议吗?
提前谢谢你,朱塞佩
【问题讨论】:
-
不应该是
counter[data[...吗? -
是的,应该的,谢谢。已更正...