C++でstd::vector <>を取得し、それを他の2つのベクトルに半分に分割する簡単で実行時に効率的な方法はありますか?
今私はこれをしているので:
std::vector<> v1, v2;
for(int i = 0; i < vector.size(); i++)
{
if(i < vector.size()/2) v1.push_back(vector[i]);
else v2.push_back(vector[i]);
}
これはO(n)時間で実行され、これは私が頻繁に実行しなければならない操作です。それで、より良い方法はありますか?