操作vector时和操作数组到底有何区别?
问题一:
我要在vector中循环删除已排序数据,每次删除最小值。
我是从小到大排列的,那么也就是说,我每次删除vector中的第一个元素,那么请问:
1、在vector中删除第一个元素,是不是会导致后面所有元素都向前移动(象操作数组一样)?这样效率岂不是很低?
2、如果这样的话,我可以把数组从大到小排序,然后每次删除vector的最后一个位置的元素,这样是不是效率会提高很多(因为不要移动元素了)。
我以上的理解是否正确?
问题二:
我用一个指针p指向了这个vector,当我循环删除vector中的值,直到vector的size=0,那么这样一来,当循环结束,vector中一个元素都没有了,这样我还是否需要调用delete p来释放vector所占用的空间?为什么?
谁要是直到准确答案,请帮我解惑,谢谢!!!
[解决办法]
1 浼?2 ,杩浠ョlist
涓瑕?杩釜ector宸辩$
[解决办法]
尽量使用vector.