写个二叉树代码
时间: 2023-07-03 16:16:18 浏览: 44
好的,以下是一个简单的二叉树实现的代码(使用 Python 语言):
```python
class Node:
def __init__(self, value=None):
self.left = None
self.right = None
self.value = value
class BinaryTree:
def __init__(self):
self.root = None
def add_node(self, value):
if self.root is None:
self.root = Node(value)
else:
self._add_node(value, self.root)
def _add_node(self, value, node):
if value < node.value:
if node.left is None:
node.left = Node(value)
else:
self._add_node(value, node.left)
else:
if node.right is None:
node.right = Node(value)
else:
self._add_node(value, node.right)
def print_tree(self):
if self.root is not None:
self._print_tree(self.root)
def _print_tree(self, node):
if node is not None:
self._print_tree(node.left)
print(str(node.value) + ' ')
self._print_tree(node.right)
```
这个二叉树的实现包含节点类 `Node` 和二叉树类 `BinaryTree`。在二叉树类中,有添加节点的方法 `add_node()` 和打印整个树的方法 `print_tree()`。添加节点的方法会根据节点的值的大小,将节点插入树的正确位置。打印整个树的方法会通过中序遍历的方式,按照从小到大的顺序打印出所有节点的值。