HOME»応用情報技術者試験掲示板»H21秋期午前問5
投稿する
H21秋期午前問5 [1448]
haruさん(No.1)
実装方法2の解説に関する質問です。
解説では,「末尾のセルからその1つ手前のセルへはポインタがないため戻ることができない」と書かれてありますが,g(n)が行っているのは末尾のセルのデータの削除であって,ポインタ型変数rearで末尾のデータへ1回で移動し,削除するので,g(n)の計算量は1になるような気がするのですが,この考えでは間違いでしょうか?
末尾のデータを削除するということは,そこへ移動するために存在した,末尾へのポインタも同時に削除しなければいけないということならばなんとなく理解はできるのですが,問題文には一切そのようなことが書かれていないため,どこか別の部分で勘違いをしていると思い質問させていただきました。
ご教授をお願いします。
解説では,「末尾のセルからその1つ手前のセルへはポインタがないため戻ることができない」と書かれてありますが,g(n)が行っているのは末尾のセルのデータの削除であって,ポインタ型変数rearで末尾のデータへ1回で移動し,削除するので,g(n)の計算量は1になるような気がするのですが,この考えでは間違いでしょうか?
末尾のデータを削除するということは,そこへ移動するために存在した,末尾へのポインタも同時に削除しなければいけないということならばなんとなく理解はできるのですが,問題文には一切そのようなことが書かれていないため,どこか別の部分で勘違いをしていると思い質問させていただきました。
ご教授をお願いします。
2019.01.27 16:33
助け人さん(No.2)
★AP ゴールドマイスター
仰っているように「末尾のデータを削除するということは,そこへ移動するために存在した,末尾へのポインタも同時に削除しなければいけないということ」です。
なぜならば、〔実装方法2〕の図にあるように(〔実装方法1〕も同じ)、末尾(この場合、n個目)のセルにおけるポインタは「なし」(一般にはnull)とするからです。
なぜならば、〔実装方法2〕の図にあるように(〔実装方法1〕も同じ)、末尾(この場合、n個目)のセルにおけるポインタは「なし」(一般にはnull)とするからです。
2019.01.27 17:16