zoukankan      html  css  js  c++  java
  • 满二叉树遍历

    图形:

    程序:

    #include<stdio.h>
    #include<stdlib.h>
    struct node{
            char data;
            struct node* left;
            struct node* right;
    };
    struct node* newNode(char data){
            struct node* node = (struct node*)malloc(sizeof(struct node));
            node->data=data;
            node->left=NULL;
            node->right=NULL;
            return node;
    }
    void printPostorder(struct node* node){
            if(node == NULL)
                    return;
            printPostorder(node->left);
            printPostorder(node->right);
            printf("%c ",node->data);
    }
    void printInorder(struct node* node){
            if(node==NULL){
                    return;
            }
            printInorder(node->left);
            printf("%c ",node->data);
            printInorder(node->right);
    }
    void printPreorder(struct node* node){
            if(node==NULL){
                    return;
            }
            printf("%c ",node->data);
            printPreorder(node->left);
            printPreorder(node->right);
    }
    int main(){
            struct node *root=newNode('A');
            root->left=newNode('B');
            root->right=newNode('C');
            root->left->left=newNode('D');
            root->left->right=newNode('E');
            root->right->left=newNode('F');
            root->right->right=newNode('G');
            root->left->left->left=newNode('H');
            root->left->left->right=newNode('I');
            root->left->right->left=newNode('J');
            root->left->right->right=newNode('K');
            root->right->left->left=newNode('L');
            root->right->left->right=newNode('M');
            root->right->right->left=newNode('N');
            root->right->right->right=newNode('O');
            printf("
    Preorder raversal of binary tree is 
    ");
            printPreorder(root);
            printf("
    Inorder raversal of binary tree is 
    ");
            printInorder(root);
            printf("
    Postorder raversal of binary tree is 
    ");
            printPostorder(root);
            return 0;
    }

    输出:

    Preorder raversal of binary tree is
    A B D H I E J K C F L M G N O
    Inorder raversal of binary tree is
    H D I B J E K A L F M C N G O
    Postorder raversal of binary tree is
    H I D J K E B L M F N O G C A
  • 相关阅读:
    IE下CSS属性float:right下换行问题解决方法
    php 中简单输出 csv和excel
    VMware 链接网络的三种模式及自己的安装方法
    ajax的应用
    php中ADODB的用法
    关于web 标准的常见问题 总结
    javascript 闭包
    php strrev 中文字符串翻转乱码的问题
    注册表 一览
    SVN Commit报错 svn: E155037: Previous operation has not finished; run 'cleanup' if it was interrupted
  • 原文地址:https://www.cnblogs.com/litifeng/p/10662120.html
Copyright © 2011-2022 走看看