我有一个稀疏填充的 vector ,我通过散列法填充它,因此元素随机散布在 vector 中。现在我想要做的是遍历该 vector 中的每个元素。我的想法基本上是压缩 vector 以适应存在的元素数量,删除任何空白空间。我有办法做到这一点吗?
最佳答案
要么在插入元素期间保存额外需要的信息(例如,与链表相比,指向上一个/下一个元素的链接),要么遍历所有元素并删除不需要的元素。
第一个解决方案会花费一些空间(大约 8 个字节/条目),第二个解决方案会花费您一次遍历所有元素。根据具体情况,一种或两种可能性可能都没有用。
关于c++ - 有没有办法压缩 vector (C++)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2559193/