建立二叉树的存储结构(层次次序)代码
时间: 2023-08-06 18:20:25 浏览: 72
以下是使用 Python 实现二叉树的层次遍历存储结构的代码示例:
```python
class TreeNode:
def __init__(self, val):
self.val = val
self.left = None
self.right = None
def create_tree(nums):
if not nums:
return None
root = TreeNode(nums[0])
queue = [root]
i = 1
while i < len(nums):
curr = queue.pop(0)
if nums[i] is not None:
curr.left = TreeNode(nums[i])
queue.append(curr.left)
i += 1
if i < len(nums) and nums[i] is not None:
curr.right = TreeNode(nums[i])
queue.append(curr.right)
i += 1
return root
```
其中,`create_tree` 函数接收一个列表 `nums`,表示二叉树的层次遍历序列。函数首先创建二叉树的根节点,然后使用一个队列 `queue` 来存储待处理的节点。从 `nums` 的第二个元素开始,依次遍历 `nums` 中的每个元素,如果当前元素不为空,则将其作为当前节点的左子节点或右子节点,然后将其加入队列中等待处理。函数最后返回二叉树的根节点。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)