• python3 二叉树的存储和三种遍历


    #coding:utf-8
    class node():  
        def __init__(self,k=None,l=None,r=None):  
            self.key=k;  
            self.left=l;  
            self.right=r;  
      
    def create(root):  
        a=input('enter a key:');  
        if a is '#':  
            root=None;  
        else:  
            root=node(k=a);  
            root.left=create(root.left);  
            root.right=create(root.right);  
        return root;  
      
    def preorder(root):      #前序遍历  
        if root is None:  
            return ;  
        else :  
            print(root.key,end='');  
            preorder(root.left);  
            preorder(root.right);  
      
    def inorder(root):     #中序遍历  
        if root is None:  
            return ;  
        else:  
            inorder(root.left);  
            print(root.key,end='');  
            inorder(root.right);  
      
    def postorder(root):   # 后序遍历  
        if root is None:  
            return ;  
        else :  
            postorder(root.left);  
            postorder(root.right);  
            print(root.key,end='');  
              
    root=None;     # 测试代码  
    root=create(root);  
    preorder(root);
    print('
    ')  
    inorder(root);  
    print('
    ')
    postorder(root);
  • 相关阅读:
    Linux内存分析
    mysql 分表
    安装YCM
    c/c++ 之静态库
    ubuntu20 宽带连接
    数据对齐
    计算机中浮点数的表示
    整数的表示
    信息的储存
    SparseTable ST表
  • 原文地址:https://www.cnblogs.com/smuxiaolei/p/7519252.html
Copyright © 2020-2023  润新知