記錄一些常見問題的不同解法

XWT7467發表於2024-06-06

1、在vector陣列中找最大值的兩種方法:
方法一:先快排再取最後的值
sort(vec.begin(),vec.end());//sort()預設升序,不要記錯了。。
vecMax.push_back(vec.back());//找最後一個即可。

方法二:使用函式max_element(),此函式返回最大值的迭代器,不是值本身。同時要將max_element()函式與max()函式分開,max()函式是比較兩個值返回兩個值的最大值
auto maxEleItrt = max_element(vec.begin(),vec.end());
if(maxEleItrt!=vec.end()){ //記住一定要判斷返回迭代器的有效性
vecMax.push_back(*maxEleItrt);
}

相關文章