python语言:用链式存储结构建立一颗二叉排序树
时间: 2023-08-21 18:32:39 浏览: 89
好的,下面是Python代码实现:
```python
class Node:
def __init__(self, key):
self.left = None
self.right = None
self.val = key
def insert(root, key):
if root is None:
return Node(key)
else:
if root.val == key:
return root
elif root.val < key:
root.right = insert(root.right, key)
else:
root.left = insert(root.left, key)
return root
```
我们创建了一个名为`Node`的类来表示二叉树的节点。每个节点都有一个`left`和`right`指针,指向其左子树和右子树。`val`属性存储节点的值。
`insert`函数接受一个根节点和要插入的值。如果根节点为空,它将创建一个新的节点并将其设置为根节点。否则,它将递归地向左或向右子树插入新节点。如果值已经存在于树中,则不插入新节点。最后,它返回更新后的根节点。
阅读全文