問題CPP02152の解答例と解説 C++ Lv.3

set<int> 検索(15分)


<解答例 1>
F11キーでフルスクリーンモード、Escキーで元に戻ります。

これは問題文にあるコードそのままだよ。find 関数の戻り値はイテレータで、見つかった場合は set の中の要素を返すよ。このset の要素は int 型なので、*iter で int 型の値を取得できるよ。set の中は、値でソートされた状態で保持されているので、find は二分木検索により、高速に計算できるよ。探索のオーダはO(log n)だよ。



<解答例 2> 不正解
F11キーでフルスクリーンモード、Escキーで元に戻ります。

これは、こうやってみたくなる気持ちはわかるけど、コンパイルができないよ。set の要素には[]を使ってアクセスすることはできないんだ。だから、解答例1のように、find関数を使うんだ。




初めての方へ:このページは、このサイトで用意しているプログラミング問題の解答と解説のページです。このサイトではブラウザ上からプログラミングができます。会員登録(無料)して、プログラミングしてみませんか?
新規登録



ログイン
メールアドレス:

パスワード:



パスワード紛失

新規登録