韩漫免费漫画在线观看方法,《好好疼爱里面》免费看,年轻漂亮的女士护士内衣,妈妈醉酒后把我当爸爸电视剧

文章 > Python基础教程 > python创建平衡二叉树的方法

python创建平衡二叉树的方法

Python 平衡二叉树

头像

小妮浅浅

2021-10-21 09:43:105695浏览 · 0收藏 · 0评论

1、生成平衡树的核心是partial_tree方法。

它以一个序列和数字为参数,通过递归的方式返回一个序列。其中第一个是结构树,第二个是不包含在书中的元素。

2、实现的整体思路是,每次传入的序列分为左半部分、顶点和右半部分,直到不能继续拆分,然后逐层返回,最后组合成一棵平衡的二叉树。

实例

"""
 list_to_tree方法将有序列表转化为平衡二叉树
 一棵二叉树分为树顶点、左子树、右子树,其中左子树的值都比树顶节点小,右子树的值都比树顶点大
"""
 
def make_tree(entry, left, right):
    # 创建树的方法
    return (entry, left, right)
 
def entry(tree):
    # 获取树的顶点
    return tree[0]
 
def left_branch(tree):
    # 获取左子树
    return tree[1]
 
def right_branch(tree):
    # 获取右子树
    return tree[2]
 
def list_to_tree(elements):
    return partial_tree(elements, len(elements))[0]
 
def partial_tree(elts, n):
    if n == 0:
        return ((), elts)
    else:
        left_size = (n - 1)  2
        left_result = partial_tree(elts, left_size)
        left_tree = left_result[0]
        non_left_elts = left_result[1]
        right_size = n - (left_size + 1)
        this_entry = non_left_elts[0]        
        right_result = partial_tree(non_left_elts[1:], right_size)
        right_tree = right_result[0]
        remaing_elts = right_result[1]
        # print("entry", this_entry)
        # print("left_tree", left_tree)
        # print("right_tree", right_tree)
        return (make_tree(this_entry, left_tree, right_tree), remaing_elts)
 
if __name__ == "__main__":
    tree = list_to_tree((1, 3, 5, 7, 9))
    print("生成的平衡二叉树为:", tree)
    print("树的顶点:", entry(tree))
    print("树的左子树:", left_branch(tree))
    print("树的右子树:", right_branch(tree))

以上就是python创建平衡二叉树的方法,希望对大家有所帮助。更多Python学习指路:python基础教程

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

欧美大片PPT免费PPT| 女人高潮抖动多久能恢复正常| 《老公请部长家里吃饭》日剧| 同学的母亲中字ID| 《明明说好要带避孕套了》中文版| 国产在线观看免费全集电视剧网站 | 斗破苍穹年番免费高清观看| お母さんは母のがいない怎么读| 原声舌吻| 妈妈的朋友7| 金色光芒| 老公不在家憋不住了该怎么办 | 老师下面太紧拔不出来怎么办| 大肉大捧-进-出XXOO| 韩漫| 电动木马炮机BY笔趣阁全文免费.. | 三人成虎| 宝贝乖把腿开大让我添添什么歌| 美柚| 啵啵浏览器| 老板不让穿内裤随时做| 乖把脚分开BY全文免费阅读| 无码欧XXXXX在线观看免费| 韩国三级有夫之妇| 吻戏高潮| 爸爸缓慢有力送女儿的文案 | 荒野激战2欧美版10大明星| 放荡少妇出轨小说| 《无法满足》意大利| 麻豆| 在线观看| 开会桌下把荫蒂添的好多水| 狠狠人妻久久久久久综合九色 | B站暴躁姐的丈夫是干什么的| 15岁女初中生免费观看电视剧| 《警花交换做爰》| 美女两个球球抖动抓球球视频| 公厕少年NASA动漫免费观看| 穿裙子在电影院做啊| 高H文| 国产精华最好的产品入口