根据输入构造二叉排序树-2

def Create_Tree_Sort_input_First(T_Node):
    #根据输入构造二叉排序树    
    Next_data=int(input('请输入结点数据'))
    if Next_data==10086:
        print('创建结束')
        return T_Node
    if T_Node==None:#根结点
        T_Node=Tree()
        T_Node.data=Next_data
    else:
        if (Next_data<T_Node.data):
            #进入根左子树
            T_Node.left=Create_Tree_Sort_input_Second(Next_data,T_Node.left)
        elif (Next_data>T_Node.data):
            #进入根右子树
            T_Node.right=Create_Tree_Sort_input_Second(Next_data,T_Node.right)
        else:
            print('创建失败,错误的输入')
            return
    Create_Tree_Sort_input_First(T_Node)
    return T_Node
def Create_Tree_Sort_input_Second(Next_data,T_Node):
    #根据输入构造二叉排序树
    if T_Node==None:
        T_Node=Tree()
        T_Node.data=Next_data
    else:
        if (Next_data<T_Node.data):
            #进入左子树
            T_Node.left=Create_Tree_Sort_input_Second(Next_data,T_Node.left)
        elif (Next_data>T_Node.data):
            #进入右子树       
            T_Node.right=Create_Tree_Sort_input_Second(Next_data,T_Node.right)
        else:
            print('创建失败,错误的输入')
            return 
    return T_Node
#由于一开始根结点为None,故传入参数应为None即:
a=None
Tree=Create_Tree_Sort_input_First(a)#即可进行创建
全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务