HOME»基本情報技術者試験掲示板»令和5年 [科目B]門3について
投稿する

令和5年 [科目B]門3について [6024]

 ケイさん(No.1) 
タイトルの門題について教えてください。
(問題文は長くなるので端折ります)

解答は[エ:21354]とのことですが、
これは/***a***/行を実行した時点での配列daraが{2,1,3,5,4}のまま(入れ替えが起こっていない)だから、という理解で大丈夫でしょうか?
2025.08.18 17:11
 ケイさん(No.2) 
令和5年 [科目B]門3
<https://www.fe-siken.com/kakomon/05_haru/b3.html >
2025.08.18 17:13
まーぼさん(No.3) 
FE シルバーマイスター
>入れ替えが起こっていない

というのは、正しいですが、なぜ入れ替えが起こらなかったかの方がここでは重要だと思います。

この問題では、クイックソートというソートアルゴリズムが題材になっています。
クイックソートの要点は、
ある基準値を決め、それより小さい値と大きい値の2つのグループに分ける。(後で参照するために、これを操作と表します)
です。

sort(1,5)を呼び出すと、大域の変数の配列の1から5番目で、上記の操作をするということです。しかし、すでに3を基準値にして、それより小さい値と大きい値のグループに分けられているため、入れ替えが起きません。
2025.08.18 17:49
 ケイさん(No.4) 
まーぼ様

ご回答ありがとうございます。

クイックソートは知識としてありましたが、門3の内容とは結び付きませんでした。
こういった点も大事なんですね。

大変勉強になりました。
ありがとうございます。
2025.08.18 18:57
返信投稿用フォームスパム防止のためにスレッド作成日から40日経過したスレッドへの投稿はできません。
© 2010- 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop