二分搜索树节点的插入学习笔记
什么是二分搜索树?
二分搜索树(Binary Search Tree,BST)是一种数据结构,它是一个有序的树形结构。每个节点最多只有左右两个子节点,且左子节点小于父节点,右子节点大于父节点。
二分搜索树的插入操作
二分搜索树的插入操作比较简单,在二分搜索树中插入一个节点,需要执行以下步骤:
- 如果树为空,则将插入的节点作为根节点。
- 如果待插入节点的值小于当前节点的值,则将待插入节点插入当前节点的左子树中。
- 如果待插入节点的值大于当前节点的值,则将待插入节点插入当前节点的右子树中。
二分搜索树节点插入示例
假设我们有一个空的二分搜索树,要向其中插入以下节点:8, 10, 3, 6, 7, 14, 1, 13。
首先插入节点 8,它成为了根节点:
Copy Code 8
接下来插入节点 10,由于它大于根节点 8,所以它应该作为根节点的右子节点:
Copy Code 8
\
10
插入节点 3,由于它小于根节点 8,所以它应该作为根节点的左子节点:
Copy Code 8
/
3
\
10
插入节点 6,由于它大于节点 3,小于节点 8,所以它应该作为节点 3 的右子节点:
Copy Code 8
/
3
\
6
\
10
插入节点 7,由于它大于节点 6,小于节点 8,所以它应该作为节点 6 的右子节点:
Copy Code 8
/
3
\
6
\
7
\
10
插入节点 14,由于它大于节点 10,所以它应该作为节点 10 的右子节点:
Copy Code 8
/ \
3 10
\ \
6 14
\
7
插入节点 1,由于它小于节点 3,所以它应该作为节点 3 的左子节点:
Copy Code 8
/ \
3 10
/ \ \
1 6 14
/ \
7 8
插入节点 13,由于它大于节点 10,小于节点 14,所以它应该作为节点 14 的左子节点:
Copy Code 8
/ \
3 10
/ \ \
1 6 14
/ \ /
7 8 13