ホームページ > バックエンド開発 > Python チュートリアル > Python でリンク リスト機能を効果的に実装するにはどうすればよいですか?

Python でリンク リスト機能を効果的に実装するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-10-31 12:26:01
オリジナル
586 人が閲覧しました

How can I effectively implement linked list functionality in Python?

Python でのリンク リストの使用

Python では、標準のリストとタプルのデータ構造は真のリンク リストではありません。リンク リストには、定数時間の連結や個別のセクションの簡単な参照など、独自の利点があります。

Python でリンク リストを定義するには、次のコードを使用できます。

>>> class Node:
...     def __init__(self, data):
...         self.data = data
...         self.next = None
ログイン後にコピー

これは次のように定義します。データの一部を保存し、リスト内の次のノードを参照できる「ノード」クラス。

リンクされたリストを作成するには、ノードを作成します。

>>> head = Node(1)
>>> second = Node(2)
>>> third = Node(3)
>>> head.next = second
>>> second.next = third
ログイン後にコピー

このコードは、先頭、2 番目、3 番目をノードとして持つリンク リストを作成します。ヘッド ノードはリストの開始点です。

リスト内の要素にアクセスするには、ノードを走査します。

>>> current_node = head
>>> while current_node is not None:
...     print(current_node.data)
...     current_node = current_node.next
ログイン後にコピー

このコードは、リスト内の各ノードのデータを出力します。

特定のアプリケーションでは、deque (両端キュー) も適切な場合があります。デキューを使用すると、O(1) の時間計算量で両端から項目を追加および削除できます。

<code class="python">>>> from collections import deque
>>> d = deque([1,2,3,4])
>>> d.pop()
4
>>> d
deque([1, 2, 3])</code>
ログイン後にコピー

リンクされたリストまたはデキューを使用すると、リンクされたリストまたはデキューの有利な特性を持つデータ構造を Python で効果的に実装できます。リスト。

以上がPython でリンク リスト機能を効果的に実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート