Select Language

AI Technology Community

4.8、Python binarytreeモジュールの使用方法

二分木ライブラリはインストールする必要があり、PIPを使用してインストールすることをおすすめします。インストールコマンドは以下の通りです:

pip install binarytree

現在のバージョンはbinarytree-4.0.0です。インストール後、このライブラリを使用するにはインポートする必要があり、方法は以下の通りです:

import binarytree

木のノードはbinarytree.Nodeクラスを使用して表されます。たとえば、値が10の木のノードを作成したい場合は、以下の方法で実現できます。

>>> root = binarytree.Node(1)
>>> type(root)
<class 'binarytree.Node'>
>>> root.value
1

Nodeノードには以下の有用な属性があります。

  • value:ノードの値。

  • right:右の子ノード。

  • left:左の子ノード。


ノードを作成し、ノードのleftとright属性を変更することで木を作成することができます。

>>> root = binarytree.Node(1)
>>> root.left = binarytree.Node(2)
>>> root.right = binarytree.Node(3)
>>> print(root)
  1
/ \
2   3
>>> root.inorder                  # 中間順巡回
[Node(2), Node(1), Node(3)]
>>> root.preorder                 # 先行順巡回
[Node(1), Node(2), Node(3)]
>>> root.postorder                # 後行順巡回
[Node(2), Node(3), Node(1)]
>>> root.height                   # 高さ
1
>>> root.size                     # ノードの数
3
>>> root.levels                   # 幅優先巡回
[[Node(1)], [Node(2), Node(3)]]


以下では、もう少し複雑な木を作成します。

>>> root = binarytree.Node(1)
>>> root.left = binarytree.Node(2)
>>> root.right = binarytree.Node(3)
>>> root.left.left = binarytree.Node(4)
>>> root.left.right = binarytree.Node(5)
>>> root.levels
[[Node(1)], [Node(2), Node(3)], [Node(4), Node(5)]]
>>> print(root)
    1
  /   \
 2     3
/ \
4  5
>>> root.height
2
>>> root.size
5


post
  • 10

    item of content
Pythonにおいて、ディレクトリとファイルは非常に重要で、異なるファイルでは同じ関数や変数を定義しても衝突が起こりません。これはJavaに似ており、CやC++とは明らかに異なります。Pythonはソースコードのレベルでネームスペースを定義していないため、ファイルとパスがimport文と共にネームスペースの役割を果たします。
異なるPythonファイルは異なるモジュールに対応し、同じディレクトリ内の複数のPythonファイルの集合が1つのパッケージとなります。
この章では、読者にPythonのモジュールとパッケージの概念と定義を説明し、合わせてサードパーティのPythonパッケージの様々なインストール方法と使用法を紹介します。