zoukankan      html  css  js  c++  java
  • 20182309 2019-2020-1 《数据结构与面向对象程序设计》第9周学习总结

    20182309 2019-2020-1 《数据结构与面向对象程序设计》第9周学习总结

    教材学习内容总结

      • 一种非线性结构
      • 二叉树
        • 满二叉树
        • 完全二叉树
      • 实现树
      • 遍历
        • 前序:根左右
        • 中序:左根右
        • 后序:左右根
        • 层序:横向看
      • 决策树

    教材学习中的问题和解决过程

    • 问题1:满二叉树,完全二叉树
    • 问题1解决方案:满二叉树是要求所有有节点的层都是满的,完全二叉树要求所有元素靠左上。

    代码调试中的问题和解决过程

    • 问题1:遍历时发现数组迭代器不在包里
    • 问题1解决方案:自己写了一个数组迭代器,把要用的功能实现了
    import java.util.Iterator;
    
    public class ArrayIterator<T> implements Iterable<T> {
        private final int DEFAULT_CAPACITY = 20;
    
        private T[] ary;
        private int count;
    
        public ArrayIterator() {
            count = 0;
            ary = (T[]) (new Object[DEFAULT_CAPACITY]);
        }
    
        public void expandCapacity(){
            T[] longer = (T[])(new Object[ary.length*2]);
            for(int index = 0; index < count; index++)
                longer[index] = ary[index];
            ary = longer;
        }
    
        public void add(T element){
            ary[count++] = element;
        }
    
        @Override
        public Iterator<T> iterator() {
            return null;
        }
    
        @Override
        public String toString(){
            String rpy = "";
    
            for (int index = 0; index < count; index++)
                rpy += ary[index];
            return rpy;
        }
    }
    

    代码托管

    结对及互评

    • 代码中值得学习的或问题:
      • 提出与课本不同的方法解决问题
    • 基于评分标准,我给本博客打分:10分。得分情况如下:
      • 正确使用Markdown语法加1分
      • 模板中的要素齐全加1分
      • 教材学习中的问题和解决过程, 一个问题加1分
      • 代码调试中的问题和解决过程, 一个问题加1分
      • 本周有效代码超过300分行的加2分
      • 排版精美的加1分
      • 代码Commit Message规范的加1分
      • 有动手写新代码的加1分
      • 结对学习情况真实可信的加1分

    点评过的同学博客和代码

    • 本周结对学习情况
      • 20182331
      • 结对学习内容
        • 阅读教材第16章和第17章内容
        • 代码托管到码云上
        • 完成课后自测题,并参考答案学习
        • 完成课后练习题
        • 完成程序设计项目,至少完成pp16.6,pp17.1

    上周错题总结

    • In an ideal implementations of a stack and a queue, all operations are ______________________ .
      A . O(1)
      B . O(n)
      C . O(n log n)
      D . O(n2)
      E . it depends on the operation
      答案:B。在堆栈和队列的良好实现中,所有操作都需要固定的时间。

    • If a binary search tree is not __________, it may be less efficient than a linear structure.
      A . complete
      B . empty
      C . balanced
      D . None of the above
      答案:C。如果二叉搜索树不平衡,它的效率可能低于线性结构。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 10000行 30篇 400小时
    第一周 138/138 2/2 25/25 学会写和上传代码,会编简单的输出程序
    第二周 88/226 1/3 30/55 起文件名不能太长
    第三周 898/1124 2/5 35/90 Java类里面的方法和C语言的函数很像
    第四周 632/1756 2/7 30/120 可以用继承extends简化重复的代码
    第五周 770/2526 2/9 45/165 --amend -m可以重命名没push的文件
    第六周 3947/6473 2/11 40/205 接口类的功能要分散,利用多继承完成功能
    第七周 1359/7832 3/14 35/240
    第八周 273/8105 1/15 15/255 查找前先排序更好
    第九周 873/8978 2/17 50/305

    参考资料

  • 相关阅读:
    elment ui 日期限制
    javascript中的编码与解码
    vue3 px 转ref
    css 波浪线
    初始化css
    vue 3 的复制功能 vue-clipboard3
    二维数组转一维数组、对象数组互斥去重
    分享几个数组方法
    前端生成图形验证码
    rem自适应布局,移动版
  • 原文地址:https://www.cnblogs.com/blueflameashe/p/11891321.html
Copyright © 2011-2022 走看看