zoukankan      html  css  js  c++  java
  • 第04次作业-树

    1.学习总结

    1.1树结构思维导图

    1.2 树结构学习体会

    1.树是一种非线性结构,其定义是递归的,在学习过程中,需要注意递归的调用。

    2.困难:建树并解决问题时没有思路。

    3.求解哈夫曼编码以及解决等价问题。

    2.PTA实验作业

    2.1 题目1:

    6-3 先序输出叶结点

    2.2 设计思路(伪代码或流程图)

    void PreorderPrintLeaves(BinTree BT)
    {
    if(BT是否为空)

    return;
    if(判断是否为叶子节点)
    printf(输出叶子节点);
    递归上述循环
    return;
    }

    2.3 代码截图

    2.4 PTA提交列表说明。

    2.1 题目2:

    6-4 jmu-ds-表达式树

    2.2 设计思路(伪代码或流程图)

    double EvaluateExTree(BTree T){

    a,b,赋值

    a=EvaluateExTree(T->lchild);
    b=EvaluateExTree(T->rchild);
    switch(判断树的计算)
    {
    case '+':
    返回 a+b;
    case '-':
    返回 a-b;
    case '*':
    返回 a*b;
    case '/':
     返回 a/b;
    }

    }

    2.3 代码截图

    2.4 PTA提交列表说明。

    2.1 题目3:

    7-1 还原二叉树

    2.2 设计思路(伪代码或流程图)


    BinTree CreateTree(char *pre,char *in,int n)
    {
    BinTree T;
    T->data=*pre;
    T->Left :

    T->Right ://对先序,中序遍历进行判断保存到T中
    return T;
    }

    int GetHeight(BinTree T)
    {
    if(树为空)return 0;
    l=GetHeight(T->Left);
    r=GetHeight(T->Right);
    存储高度max
    return max+1;
    }

    2.3 代码截图

    2.4 PTA提交列表说明。

    3.截图本周题目集的PTA最后排名

    3.1 PTA排名截图

    3.2 我的总分:1.5

    4. 阅读代码(必做)

    二叉树的宽度

    1 int treeWidth(Bitree *root){
     2   if(!root){
     3     return 0;
     4   }
     5   int width = 0;
     6   int maxWidth = 0;
     7   queue<Bitree *> Q;
     8   Bitree *p = nullptr;
     9   Q.push(root);
    10   while(!Q.empty()){
    11     width = Q.size();
    12     if(maxWidth < width){
    13       maxWidth = width;
    14     }
    15     for(int i=0; i<width; i++){
    16       p = Q.front();
    17       Q.pop();
    18       if(p->left){
    19         Q.push(p->left);
    20       }
    21       if(p->right){
    22         Q.push(p->right);
    23       }
    24     }
    25   }
    26   return maxWidth;
    27 }

    代码功能:求二叉树的高度

    优点:可以清晰地知道每一层中节点的多少,自然也知晓树的宽度。

    5. 代码Git提交记录截图

  • 相关阅读:
    mysqlnd cannot connect to MySQL 4.1+ using old authentication
    nginx中查看关于php的配置和php-fpm的重启等操作
    nginx中查看关于php的配置和php-fpm的重启等操作
    linux面试题1
    linux笔试
    面试题
    shell脚本实例
    shell脚本
    mysql主从复制
    Discuz!NT静态文件缓存(SQUID)
  • 原文地址:https://www.cnblogs.com/k1206/p/8996006.html
Copyright © 2011-2022 走看看