ホームページ  >  記事  >  バックエンド開発  >  PHPのリンクリストとはどういう意味ですか?

PHPのリンクリストとはどういう意味ですか?

青灯夜游
青灯夜游オリジナル
2022-02-11 19:13:282422ブラウズ

PHP では、リンク リストは基本的なデータ構造であり、線形リストです。リンク リストは、ストレージを動的に割り当て、データの動的な増減に適応でき、データ項目の挿入と削除を簡単に行うことができます。リンク リストには、一方向リンク リスト、二重リンク リスト、循環リンク リストの 3 つの異なるタイプがあります。

PHPのリンクリストとはどういう意味ですか?

このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

php のリンク リスト

リンク リストは一般的な基本データ構造です。線形リストですが、データを線形順序で格納するのではなく、各ノードのデータを次のノードに格納します。ポインタ。

リンク リストはストレージを動的に割り当てるため、データの動的な増減に適応でき、データ項目の挿入や削除も簡単に行えます。 (配列内のデータ項目を挿入または削除する場合、他のデータ項目を移動する必要があり、非常に面倒です。) リンクされたリストは、次のポインターに基づいて次の要素を検索する必要があります。

リンク リスト構造を使用すると、データ サイズを事前に知る必要があるという配列リンク リストの欠点を克服でき、コンピュータのメモリ空間を最大限に活用し、柔軟な動的メモリ管理を実現できます。 。しかし、リンクリストは配列のランダム読み取りの利点を失い、同時にノードのポインタフィールドの増加によりリンクリストのスペースオーバーヘッドが比較的大きくなります。

リンク リストには、一方向リンク リスト、二重リンク リスト、循環リンク リストの 3 つの異なるタイプがあります。

一方向リンク リスト

一方向リンク リストには、情報フィールドとポインター フィールドの 2 つのフィールドが含まれます。このリンクはリスト内の次のノードを指し、最後のノードは null 値を指します。

図に示すように:

PHPのリンクリストとはどういう意味ですか?

二重リンク リスト

各ノードには 2 つの接続があります: 1 つのポイント前の 1 つのノード (この「接続」が最初の「接続」の場合、null 値または空のリストを指します)、もう 1 つは次のノードを指します (この「接続」が最後の「接続」の場合)。接続"、null 値または空のリストを指します)

図に示すように:

PHPのリンクリストとはどういう意味ですか?

循環リンク リスト

循環リンク リストでは、最初のノードと最後のノードが相互に接続されます。このメソッドは、一方向リンク リストと双方向リンク リストの両方で実装できます。循環リンク リストを変換するには、任意のノードから開始して、開始ノードに戻るまでいずれかの方向にリストに従います。別の方法で見ると、循環リンク リストは「頭なし、尾なし」とみなすことができます。このようなリストは、リスト内にオブジェクトが 1 つあり、他のすべてのオブジェクトを不特定の配置で反復処理する必要がある場合に、データ ストレージ キャッシュを節約するのに役立ちます。リスト全体へのポインタをアクセスポインタと呼ぶこともある。

PHPのリンクリストとはどういう意味ですか?

推奨学習: 「PHP ビデオ チュートリアル

以上がPHPのリンクリストとはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。