20162314 2017-2018-1 《Program Design & Data Structures》Learning Summary Of The First Week

Summary of teaching materials

  • Algorithm analysis is the basic project of the computer science.

  • Increasing function prove that the utilization of the time and space are related with the scale of the problem.

  • The order of algorithm is determined by the main term of increasing function.

  • The order of algorithm provides an upper bound to a increasing function.

  • Faster CPU can not supply the ineffective of an algorithm as the scale of the problem growing.

  • Analysing the complexity of an algorithm often needs analysing the execution of the loop.

  • The execution of the inner loop and the outer loop must be considered when analysing a nested loop.

  • Tower of Hanoi contains the complexity of the order of index number,even though it is ineffective,the implement is elegant and concise.

Problem and solution in learning materials of teaching.

According to the chart, if the time complexity of A4 is n^4, the scale after improvement should be 1.78s4. But the answer is s4+3.3, due to the log2(10)≈3.3
so I suppose the answer could be s4+log2(10), and if so, the time complexity is 2^n. The question is solved.

Problem and solution in debugging code.

problem: In TowersOfHanoi conductor, whether the time will increase or not when the number of disk rise.

  • Number of disk:4.

  • Number of disk:5.

The answer is yes, time rises from 1s 124ms to 1s 160ms.

problem: what is the distingguish between direct recursion and indirect recursion and How to use it .

If the current location is not the bottom-right corner, we search for a solution in each of the primary directions, if necessary.
First, we look down by recursively calling the traverse method and passing in the new location.
The logic of the traverse method starts all over again using this new position. It’s as if each call
to traverse is attempting to solve a new, slightly smaller, maze.
---from the teaching materials.

Code hosting

Summary of error for last week.

Evaluate for my partner

  • Advantage and problem in the blog:

    • Concise and comprehensie
    • Uncleary to the content
    • Mould is amazing
  • Advantage and problem in the code:
    • Serious writing.
    • Wonderful idea
    • Too less

Learning situation of partner

  • 20162310

  • Learning content of partner:
    • Algorithm
    • Recursion
    • HanoiTowers and maze

Anything else that want to say

Recently, I'm preparing for the CATTI and I thought I've never written blog in English before.Therefore, I suppose I could do it once a week as the homework weekly.
I have to say it's a hard work to start with.But it might be benefit for me if I can take this as a long run.

Academic progress check

Code line number(increasing/accumulative) Blog number(inc/acc) studying time(inc/acc) progress
target 5000lines 30articles 400hours
First week 180/180 1/1 20/20
Second week 300/500 2/4 18/38
Third week 500/1000 3/7 22/60
Fourth week 300/1300 2/9 30/90

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

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

  • 计划学习时间:XX小时

  • 实际学习时间:XX小时

  • 改进情况:

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

参考资料

20162314 《Program Design & Data Structures》Learning Summary Of The First Week的更多相关文章

  1. 20162314 《Program Design & Data Structures》Learning Summary Of The Ninth Week

    20162314 2017-2018-1 <Program Design & Data Structures>Learning Summary Of The Ninth Week ...

  2. 20162314 《Program Design & Data Structures》Learning Summary Of The Seventh Week

    20162314 2017-2018-1 <Program Design & Data Structures>Learning Summary Of The Seventh Wee ...

  3. 20162314 《Program Design & Data Structures》Learning Summary Of The Fifth Week

    20162314 2017-2018-1 <Program Design & Data Structures>Learning Summary Of The Fifth Week ...

  4. 20162314 《Program Design & Data Structures》Learning Summary Of The Second Week

    20162314 2017-2018-1 <Program Design & Data Structures>Learning Summary Of The Second Week ...

  5. 20162314 《Program Design & Data Structures》Learning Summary Of The Eleventh Week

    20162314 2017-2018-1 <Program Design & Data Structures>Learning Summary Of The Eleventh We ...

  6. 20162314 《Program Design & Data Structures》Learning Summary Of The Tenth Week

    20162314 2017-2018-1 <Program Design & Data Structures>Learning Summary Of The Tenth Week ...

  7. 20162314 《Program Design & Data Structures》Learning Summary Of The Eighth Week

    20162314 2017-2018-1 <Program Design & Data Structures>Learning Summary Of The Eighth Week ...

  8. 20182320《Program Design and Data Structures》Learning Summary Week9

    20182320<Program Design and Data Structures>Learning Summary Week9 1.Summary of Textbook's Con ...

  9. 【Python学习笔记】Coursera课程《Python Data Structures》 密歇根大学 Charles Severance——Week6 Tuple课堂笔记

    Coursera课程<Python Data Structures> 密歇根大学 Charles Severance Week6 Tuple 10 Tuples 10.1 Tuples A ...

随机推荐

  1. haproxy + lvs异同(优点-缺点)

    LVS和HAProxy相比,它的异同是什么? 1.  两者都是如软件负载均衡.但lVS是基于linux操作系统实现的一种软负载均衡,Haproxy是根据第三 方应用实现的软负载均衡. 2.  LVS是 ...

  2. mysql sqlite3 postgresql 简明操作

    安装 mysql $ sudo apt-get install mysql-server sqlite3 $ sudo apt-get install sqlite3 postgresql $ sud ...

  3. pci枚举初始化部分(1)

    基于linux-4.20-rc3源码分析 1 .扫描所有PCI设备并检测,填充设备结构体 static struct pci_dev *pci_scan_device(struct pci_bus * ...

  4. c# multi-ply download ui

    first neet add an user control "DownloadBar": /* Created by SharpDevelop. User: gwang Date ...

  5. 20155306 白皎 《网络攻防》 Exp2 后门原理与实践

    20155306 白皎 <网络攻防> Exp2 后门原理与实践 一.实践基础 后门程序又称特洛伊木马,其用途在于潜伏在电脑中,从事搜集信息或便于黑客进入的动作.后程序和电脑病毒最大的差别, ...

  6. Autoanalyze 的注意事项

    磨砺技术珠矶,践行数据之道,追求卓越价值 回到上一级页面:PostgreSQL内部结构与源代码研究索引页    回到顶级页面:PostgreSQL索引页 根据官方文档的说明  http://www.p ...

  7. 23-[模块]-logging

    1.日志级别 很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志 ...

  8. spark遇到的一些问题及其解决办法

    1.报错:ERROR storage.DiskBlockObjectWriter: Uncaught exception while reverting partial writes to file ...

  9. [SCOI2010]传送带 三分法

    [SCOI2010]传送带 LG传送门 三分法模板. 关于为什么可以三分,我选择感性理解,有人证明了,总之我是懒得证了. 假设路径是\(A \to E \to F \to D\),\(E\)和\(F\ ...

  10. 【操作系统】C语言编写的FAT16文件系统

    [操作系统]C语言编写的FAT16文件系统 这是操作系统的期末课程设计作业之一,主要功能是在物理内存中虚拟出一个1M大小的FAT16的文件系统,然后把它读入内存中,进行具体的文件操作,具体的实用性不大 ...