【发布时间】:2011-06-27 21:57:26
【问题描述】:
我想查找向量的排序顺序,例如,不重新排序向量。
我可以想到几种方法来做到这一点,我想知道我是否缺少一些内置的 STL 或 BOOST 方法来做到这一点。
我想如果功能可用,代码最终会看起来像这样:
std::vector<float> unsortedSeq;
unsortedSeq.push_back( 1.1 );
unsortedSeq.push_back( 1.0 );
unsortedSeq.push_back( 0.5 );
unsortedSeq.push_back( 1.2 );
unsortedSeq.push_back( 1.15 );
std::list<std::size_t> sortOrder;
std::sort_indices( unsortedSeq.begin(), unsortedSeq.end(), sortOrder.begin() );
BOOST_FOREACH( std::size_t index, sortOrder )
{
std::cout << index << "\n"
}
2
1
0
4
3
任何人都知道任何 STL 或 BOOST-sims 可以做到我所要求的,如图所示?
【问题讨论】: