为什么从 std::vector 中随机删除比 std::list 快?我正在做的加快它的是将随机元素与最后一个交换,然后删除最后一个。我原以为该列表会更快,因为它是为随机删除而构建的。
for(int i = 500; i < 600; i++){
swap(vector1[i], vector1[vector1.size()-1]);
vector1.pop_back();
}
for(int i = 0; i < 100; i++){
list1.pop_front();
}
结果(以秒为单位):
Vec 交换删除:0.00000909461232367903
列表正常删除:0.00011785102105932310