zoukankan      html  css  js  c++  java
  • DS博客作业——树

    1.本周学习总结

    1.1思维导图

    1.2学习体会

    树的学习,让我意识到自己的不足,学习也越来越难以跟上老师的,可能是基础差吧,再加上学习树的时候赶上概率论考试,ACM省赛(我做志愿者,然后周末没了),复习,练习的也较少,觉得这部分学的很水。
    树对于递归使用的比较多,能否熟练地使用递归是能否运用树的关键。

    2.PTA实验作业

    2.1题目一:二叉树叶子结点带权路径长度和

    2.1.1设计思路

    BTree CreatBTree(int i)
    if i>str的长度-1 返回NULL//输入的字符串遍历完
    if str[i]==‘#’ 返回NULL//遇到空结点
    data = str[i]
    左孩子递归
    右孩子递归
    void GetWpl(BTree BT, int &wpl, int h)
    if 左右叶子结点为空
    wpl=深度*当前data的值
    递归访问左子树
    递归访问右子树

    2.1.2代码截图


    2.1.3提交列表及说明

    2.2题目二:修理牧场 (优先队列的使用)

    2.2.1设计思路

    建立从小到大的优先队列
    数入队
    while (队列长度大于1)//当队列长度为1的时候,队列中只剩下一个sum
    取两个最小值出队
    算sum
    两最小值相加入队
    end while
    输出sum

    2.2.2代码截图

    2.2.3提交列表及说明

    本题并不是在做的时候遇到阻碍,而是在做题过程中学到了一下东西,在课上讲完如果算WPL最小值后,范华同学在同我回宿舍的路上给我说了可以使用优先队列,这样使得题目非常简单,回去试了一下,果然。
    在优先队列中,优先级高的元素先出队列。
    标准库默认使用元素类型的<操作符来确定它们之间的优先级关系。
    差不多就是priority_queue<int, vector, greater >q;//优先队列,从小到大入栈自动排序
    priority_queue<int, vector,less >q;//优先队列,从大到小入栈自动排序
    其实,应该是出栈顺序有变,但都是排序嘛。

    2.3题目三:中序输出度为1的结点

    本题要求实现一个函数,按照中序遍历的顺序输出给定二叉树中度为1的结点

    2.3.1设计思路

    if BT结点为空,返回
    ifBT结点不空
    递归遍历左孩子
    判断度是否为1//左孩子空右孩子不空或左孩子不空右孩子空
    是 输出
    不是 end if
    递归遍历右孩子
    end if

    2.3.2代码截图

    2.3.3提交列表及说明


    本题我改了好多次,但始终是过不了,为此,甚至在判断是否度为1的时候加了一层又一层的括号(一定是运算符优先级没学好)然后,还是不行,最终,发现是我输出时候把字符形式按%d输出的
    应该是从本学期学数据结构开始使用C++,然后就忘了C的一些要注意的地方。

    3.阅读代码

    据说晓淞那里有省赛的题我就去偷来了……

    3.1题目

    3.2解题思路

    和修理牧场的题目差不多,可以使用优先队列。
    将所有的猫的weight全部放进一个使用小顶堆的优先队列q;
    int sum=0;
    while(q.size()!=1)
    出队权值最小的两项并求和plus;
    入队plus;
    sum+=plus;
    输出sum;

    3.3代码截图

    3.4学习体会

    这种ACM的题目,说难吧,其实也不难(但对我来说确实很难),英语脑残的我可能看英语题目就要花好久时间来理解题目,这种题其次一点就是对数的处理,和PTA不一样,ACM的题往往要用庞大的数据去测试,正如晓淞的代码,对数据的定义都是long long ,再加上我平时写代码也总是丢三落四(上面PTA题目可证),写代码要戒骄戒躁。还有,优先队列真好用。

  • 相关阅读:
    爬虫--urllib,requests模块
    ADO.NET实用经验汇总
    MVC框架的优点-老外的原文翻译
    ASP.NET MVC 3: Razor的@:和语法
    html做表格只显示表格的外边框
    ASP.NET 页生命周期概述
    Asp.Net母版页元素ID不一致的体现
    Asp.Net套用母版页后元素ID不一致之个人总结
    ASP.NET 4.0配置文件中的ClientIDMode属性
    Asp.Net母版页和内容页运行机制
  • 原文地址:https://www.cnblogs.com/qsls8643/p/10887320.html
Copyright © 2011-2022 走看看