1.14.STLの関数¶
コメント¶
STLの関数はAPG4bで紹介されたもの以外にも色々あります。興味がある人は調べてみるといいでしょう。
min
,max
,swap
,sort
,reverse
はよく使うので覚えておいてください。
豆知識¶
逆順ソート¶
#include <bits/stdc++.h>
using namespace std;
int main(){
vector<int> vec = {2,4,1,3};
sort(vec.begin(),vec.end());
reverse(vec.begin(),vec.end());
for(int i = 0;i < 4;i++)cout << vec[i] << "\n";
}
4
3
2
1
このように、配列の要素を大きい順番に並べ替えたいときは上のコードのように一旦小さい順に並び替えてから配列全体を逆転させることで出来ます。
min,maxの発展¶
min
,max
を使うと要素の最小値/最大値が分かりますが、
min(a,b,c);//コンパイルエラー
max(a,b,c);//コンパイルエラー
min
,max
の中に要素を3つ以上書くとコンパイルエラーになってしまいます。
3つ以上の要素の要素の最小値/最大値を知りたい場合は下のように {}
で囲ってください。
min({a,b,c});//コンパイルエラーにならない
max({a,b,c});//コンパイルエラーにならない
演習問題¶
関数は問題を解いていくうちに自然と覚えていくと思います。
余裕がある人向けの問題