zoukankan      html  css  js  c++  java
  • 先序遍历建树

    以后的算法中可能需要有建树的过程,就把建树的过程,单独弄出来了。

    通过先序遍历来建立一棵树。如果要建立的树长成这样:

                       10
                                               /     \
                                             6        14
                                           /   \      / 
                                        4      8   12

    那么输入则是应该是这样  10  6  4 # # 8 # # 14  12 # # #  应该是每一个值成为一行,而不是我这样把所有的值都写成一行。

    他的规则就是,一个先序遍历的过程,先10,再6,在4,在NULL,在NULL,在8,在14,在12,在NULL,NULL,NULL


    #include <iostream>
    using namespace std;
    
    struct TreeNode
    {
        int data;
        TreeNode* pLeftChild;
        TreeNode* pRightChild;
    };
    
    void CreateTree(TreeNode*& pRoot)
    {
        char buffer[10];  
        memset(buffer, 0, 10);  
        std::cin.getline(buffer, 9);  
        int a = atoi(buffer);  
        if(a == 0) pRoot = NULL;  
        else  
        {  
            pRoot = new TreeNode();  
            pRoot->data = a;  
            pRoot->pLeftChild = pRoot->pRightChild = NULL;  
            CreateTree(pRoot->pLeftChild);  
            CreateTree(pRoot->pRightChild);  
        }  
    }
  • 相关阅读:
    Hbase 安装
    Hive操作
    Hive安装
    HDFS操作
    hadoop安装
    番茄时间管理法(Pomodoro Technique)
    测试架构师修炼之道:“秘书九段”的故事
    windows远程连接报:身份错误,函数不支持的解决办法
    Linux crontab配置
    Hadoop 历史服务配置启动查看
  • 原文地址:https://www.cnblogs.com/cyttina/p/2741761.html
Copyright © 2011-2022 走看看