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

[3684] 平成30年春期午後問8

 きなこさん(No.1) 
https://www.fe-siken.com/kakomon/30_haru/pm08.html
1番最後のe問題での質問です。
副プログラムheapsort でhlast は要素番号5となり、downheap での行番号4が30≦10となり、成り立たないと感じたのですが、この時のhlast は要素番号6のままなのでしょうか。
ぜひご教授いただけると嬉しいです。
2021.10.19 10:04
関数従属さん(No.2) 
FE ゴールドマイスター
heapSortの行番号4から行番号7までの1回目の繰返し処理の際、
副プログラムdownHeapが呼び出された時のhlastの値は5で合っております。

downHeapの行番号4の1回目の繰返し処理の判定は
n(=0)に対するlchild(n)の値(=1)とhlastの値(=5)を比較(1と5を比較)する為、
ループの中に入りdownHeap行番号5以降の処理が行われていきます。
(※heap配列の中身が比較されるわけではありません。)
2021.10.20 22:39
 きなこさん(No.3) 
ご回答ありがとうございます!
中身を比べるのではないのですね、理解できました!
ありがとうございます。
2021.10.21 10:15

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。
© 2010-2024 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop