HOME»基本情報技術者試験掲示板»平成22年春期午後問8
投稿する

平成22年春期午後問8 [4145]

 あさこさん(No.1) 
設問2のウの解説で、なぜこの順番で処理がなされるのか理解できません。
④までは分かるのですが、それ以降がいまいち理解できません。
再帰関数の処理の流れについて色々調べ、図で表すなどして考えているのですが、半分ぐらいしか理解できていません。
どなたか解説していただけないでしょうか。
2022.04.23 14:54
chihiroさん(No.2) 
FE プラチナマイスター
https://www.fe-siken.com/bbs/4136.html
ここでトレース内容について軽く説明してます。
2022.04.23 15:23
 あさこさん(No.3) 
分かりやすい説明、ありがとうございます!

1つ分からないのですが、
「副プログラムMergeの返却値である配列が、配列listの内容」であるのに、なぜ、chihiroさんが書かれた説明の上から4段落目の「⑵の続きから」では、slist2=[8,2]がslist2=[2,8]になるのでしょうか?
どこで、slist2の内容が更新されているのですか?
2022.04.23 16:07
 あさこさん(No.4) 
文字化け部分は、「カッコ2の続きから」です。
2022.04.23 16:08
chihiroさん(No.5) 
FE プラチナマイスター
3段落目のSort(slist2=[8,2],2)の処理で
[8,2]→[8],[2]に分解→併合した[2,8]を返す  
としています。少し適当に書き過ぎました。
2022.04.23 16:25
 あさこさん(No.6) 
何度も申し訳ありません!

問題文の副プログラムMergeのどの部分で、更新されたslist2が返却されているのかが分からないのです。
listの内容が更新されることは分かるのですが…(泣)
2022.04.23 16:40
chihiroさん(No.7) 
FE プラチナマイスター
表2  Mergeの引数の仕様で、list[]の入力/出力が出力となっているので、併合後のlistが返却値となります。Mergeのプログラム中にはlistを返却しているような箇所は見当たらないので、そういう仕様なんだなと納得してください。
2022.04.23 16:50
 あさこさん(No.8) 
何度もありがとうございました!
2022.04.23 20:35
返信投稿用フォームスパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
© 2010- 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop