方法实现
二叉树销毁过程是需要将存储在二叉树结点的内存空间释放和相应信息段删除。,再将二叉树置空。二叉树的销毁可利用先序遍历的思想,以左节点、右节点、根结点的遍历顺序来删除二叉树中每一个结点。
def destroy_tree(root):
if root==Node:
return
if root.left:
destroy_tree(root.left)
if root.right:
destroy_tree(root.right)
root=None
print("已销毁")
memory_profiler内存分析
memory_profiler是Python非常方便的内存分析工具,memory_profiler的具体使用可借鉴 →memory_profiler的使用
添加二叉树方法时,程序内存分析结果如下
由分析结果可知:使用创建二叉树函数时,内存分配了18.8MB
销毁二叉树方法内存分析,结果如下
对二叉树销毁方法进行内存分析,也看到了新增内存已经发生变动。
附录
本手记实现代码
from memory_profiler import profile
class Node:
def __init__(