リストは、配列で実現する場合とポインタで実現する場合とがある。
リストを配列で実現した場合の特徴として、適切なものはどれか。
ア | リストにある実際の要素数にかかわらず、リストの最大長に対応した領域を確保し、実際には使用されない領域が発生する可能性がある。 |
イ | リストにある実際の要素数にかかわらず、リストへの挿入と削除は一定時間で行うことができる。 |
ウ | リストの中間要素を参照するには、リストの先頭から順番に要素をたどっていくので、要素数に比例した時間が必要となる。 |
エ | リストの要素を格納する領域の他に、次の要素を指し示すための領域が別途必要となる。 |
答え ア
【解説】
ア | 配列を使ったリストの説明です。 配列を使ったリストではメモリの無駄(使わない領域)が発生する問題があります。 |
イ | 配列を使ったリストの場合、要素の挿入は挿入する場所より後ろの要素をずらす処理が必要なため、挿入する場所によって処理時間が異なります。 |
ウ | ポインタを使ったリストの説明です。 配列を使ったリストの場合、整列(ソート)を行うことで効率的なアクセスも可能になります。 |
エ | ポインタを使ったリストの説明です。 |
【キーワード】
・リスト