こんにちは ぱそちゃんです
この半月というものすっかりサボりまくりで
試験のことなど忘れてしまったような毎日を送ってしまいました。
そして当然 学力も低下 問題文を読む気力も根性もなく
しかし、もう6月がきてしまう ということでこのままではいかーん
気を引き締めて頑張りたいとおもいます
-------------------------------------------------------------------
H29年度 春期基本情報技術者試験 午前問題
問4
データ構造の一つであるリストは、配列を用いて実現する場合と、
ポインタを用いて実現する場合とがある。
配列を用いて実現する場合の特徴はどれか。
ここで、配列を用いたリストは、
配列に要素を連続して格納することによって構成し、
ポインタを用いたリストは、
要素から次の要素へポインタで連結することによって構成するものとする。
ア 位置を指定して、任意のデータに直接アクセスすることができる
イ 並んでいるデータの先頭に任意のデータを効率的に挿入することができる
ウ 任意のデータの参照は効率的でないが、削除や挿入の操作を効率的に行える
エ 任意のデータを別の位置に移動する場合、隣接するデータを移動せずにできる
------------------------------------------------------
解説
アの選択肢
問題文にある通り 配列は要素が連続して格納されています。
データが連続して並んでいるから位置を指定して任意のデータに
直接アクセスすることができます。
一方 ポインタで連結したデータはそれぞれに格納されているので
位置を指定するのも任意のデータに直接アクセスするのもポインタをたどる必要があります。
イの選択肢
並んでいるデータの先頭に任意のデータを効率的に挿入できるのは
ポインタで連結したリストです。
現在、最初にあるデータの前に任意のデータをポインタで連結すれば
簡単に先頭のデータに挿入することができ、
後ろのデータは何も変更することがありません。
ウの選択肢
削除や挿入の操作を効率的に行えるのは、ポインタで連結したリストです
エの選択肢
データの移動でも、ポインタでつないだリストならば隣接データを移動せず
移動することができますが、配列の場合は以降のデータを1つずつずらす必要が出てきます。
よって、正解は選択肢アです