zoukankan      html  css  js  c++  java
  • # 20162312 2017-2018-3 《程序设计与数据结构》第5周学习总结

    教材学习内容总结

    学习目标

    • 数据结构

    • 抽象数据类型

    • 用链表和数组实现栈

    • 栈和数组以及链表的结合使用。

    • 链表

    • 链表栈、数组栈

    • 栈的示意图

    • 栈的基本运算
    (1)InitStack(S)  
          构造一个空栈S。  
     (2)StackEmpty(S)  
          判栈空。若S为空栈,则返回TRUE,否则返回FALSE。  
     (3)StackFull(S)  
          判栈满。若S为满栈,则返回TRUE,否则返回FALSE。  
    注意: 该运算只适用于栈的顺序存储结构。  
     (4)Push(S,x)  
          进栈。若栈S不满,则将元素x插入S的栈顶。  
     (5)Pop(S)
    
    

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

    • 问题1:不是很理解抽象数据类型

    • 问题1解决方案:在网上查资料了解到:抽象数据类型(ADT)是指一个数学模型及定义在该模型上的一组操作。它仅取决于其逻辑特征,而与计算机内部如何表示和实现无关。比如整型,各个计算机,都有“整型”类型,也需要整形运算,那么整型其实就是一个抽象数据类型。

    • 问题2:书上哨兵节点描述过于抽象,不是很理解

    • 问题2解决方案: 在网上查找了相关的解释:

    假设某个漆黑的夜晚,诸位在海岸的悬崖边上玩一个游戏。诸位站在距悬崖边缘100米的地方,地上每隔1米就任意放1件物品。请找出这些物品中有没有苹果。诸位每前进1米就要捡起地上的物品,检查是否拿到了苹果,同时还要检查有没有到达悬崖的边缘(不检查的话就有可能掉到海里),也就是说要对这两种检查反复若干次。使用了哨兵以后,就要先把起点挪到距悬崖边缘101米的地方,再在悬崖的边缘放置一个苹果。这个苹果就是哨兵,通过放置哨兵,诸位就一定能找到苹果了。每前进1米只需检查检验到的物品是不是苹果就可以了。发现是苹果以后,只需站在原地再检查一步开外的情况。如果还没有到达悬崖边缘,就意味着找到了真正要找的苹果。已经达到了悬崖边缘,则说明现在手中的苹果是哨兵,而没有找到真正要找的苹果。

    作者:知鉴
    链接:https://www.zhihu.com/question/27155932/answer/76553044

    错题及总结(活动未结束,暂时无法看具体解析)

    代码托管

    结对及互评

    本周结对学习情况

    • 20162324

    • 结对学习内容

      • 讨论了结点类等知识点

    思考

    学习还需要进一步深化

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 0/0 1/1 6/6
    第二、三周 403/403 2/3 14/20
    第4、5周 1452/1855 2/5 8/28

    尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
    耗时估计的公式
    :Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

    参考:软件工程软件的估计为什么这么难软件工程 估计方法

    • 计划学习时间:8小时

    • 实际学习时间:9小时

    • 改进情况:

    (有空多看看现代软件工程 课件
    软件工程师能力自我评价表
    )

    参考资料

  • 相关阅读:
    nginx 按天生成日志
    cmder
    EXCEL最大行数问题:org.apache.xmlbeans.impl.store.Saver$TextSaver.resize(Saver.java:1700)
    nginx configure 错误记录
    Flume NetCat Demo
    Flume
    hbase
    kafka安装配置
    azkaban
    sqoop
  • 原文地址:https://www.cnblogs.com/1zhjch/p/7670619.html
Copyright © 2011-2022 走看看