連結リストと配列の比較とは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > 連結リストと配列の比較の意味・解説 

連結リストと配列の比較

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/03/01 16:16 UTC 版)

ルックアップテーブル」の記事における「連結リストと配列の比較」の解説

詳細は「連結リスト」を参照 連結リストには配列比較して以下のような利点がある。 連結リスト特有の性質として、要素挿入削除定数時間行える(なお、削除され要素を「この要素は空である」とマーキングする方式であれば配列でも削除定数時間行える。ただし、配列走査する際に空の要素スキップする必要がある)。 要素挿入を、メモリ容量の許す限り連続して行える。配列場合は、内容いっぱいになったらリサイズする必要があるが、これは高価な処理である上に、メモリ断片化していた場合はリサイズ自体が行えないこともある。同様に配列から要素大量に削除した場合使用メモリの無駄をなくすには配列のリサイズを行う必要がある一方配列には以下のような利点がある。 連結リストシーケンシャルアクセスか行えないが、配列ランダムアクセスが行える。また、単方向連結リスト場合一方向にしか走査が行えない。このためヒープソートのようにインデックス使って要素高速参照する必要がある理に連結リスト向いていない。 多くマシンでは、連結リストよりも配列のほうが順次アクセス高速行える。これは、配列の方が参照の局所性高くプロセッサキャッシュ恩恵を受けやすいためである。 連結リスト配列比較してメモリ多く消費する。これは、次の要素への参照保持しているためであるが、格納するデータ自体小さ場合キャラクタブール値などの場合)はこのオーバーヘッド原因実用性なくなってしまうこともある。また、新し要素格納する際の動的メモリ確保にネイティブアロケータを使用する場合メモリ確保による速度低下使用メモリ量の無駄が発生する場合もあるが、これはメモリプール使用すれば概ね解決できる2つの手法を組み合わせて両方利点得ようとする手法もある。Unrolled linked listでは一つ連結リストノード中に複数要素格納することでキャッシュパフォーマンスを向上させるとともに参照保持するためのメモリオーバーヘッド削減している。同様の目的使用されるCDRコーディングでは、参照レコード終端伸ばし参照実際に参照されるデータ置き換えている。

※この「連結リストと配列の比較」の解説は、「ルックアップテーブル」の解説の一部です。
「連結リストと配列の比較」を含む「ルックアップテーブル」の記事については、「ルックアップテーブル」の概要を参照ください。

ウィキペディア小見出し辞書の「連結リストと配列の比較」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「連結リストと配列の比較」の関連用語

連結リストと配列の比較のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



連結リストと配列の比較のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのルックアップテーブル (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS