Vector的基本數據結構
可以看到end指向的是數組的最后一個元素;
那么在使用函數遍歷的時候就要注意這種清理;
比如計算一個數組前5個數字的最小值;
vector<int> prices{2,1,4,2,0,52,12};auto iter_min = min_element(prices.begin(),prices.begin()+4);cout<<*iter_min<<endl;
輸出的是1
然而正確的是
Solution sol;vector<int> prices{2,1,4,2,0,52,12};auto iter_min = min_element(prices.begin(),prices.begin()+5);cout<<*iter_min<<endl;
輸出為0
這才是對end()的正確理解,這樣的好處就是可以理解end指向后一個元素,雖然是+5 但是處理的是從bigen開始計算的前5個元素;