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. C#只能lock 引用类型的值 (转载)

    Lock:        C#只能lock 引用类型的值,如果lock一个int, bool,编译器会报错.    当一个互斥锁已被占用时,在同一线程中执行的代码仍可以获取和释放该锁.但是,在其他线程 ...

  2. sencha 2.3中自己定义PullRefreshFn给PullRefresh加入下拉刷新事件

    Sencha removed the refreshFn from the pullrefresh plugin in ST 2.2. Here is an user extension with g ...

  3. KVM虚拟机IO处理过程(二) ----QEMU/KVM I/O 处理过程

    接着KVM虚拟机IO处理过程中Guest Vm IO处理过程(http://blog.csdn.net/dashulu/article/details/16820281),本篇文章主要描述IO从gue ...

  4. 解决Xcode 7 http无法使用的问题

    在info.plist文件中添加 <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbit ...

  5. ios开发UI篇--UIStepper

    概述 UIStepper用于增加或减少值的控件. 属性和方法 初始化方法 UIStepper *stepper = [[UIStepper alloc] initWithFrame:CGRectMak ...

  6. Linux入门基础(三):Linux用户及权限基础

    用户基础 用户和组 每个用户都拥有一个userid 每个用户都属于一个主组,属于一个或多个附属组 每个组拥有一个groupid 每个进程以一个用户身份运行,受该用户可访问资源限制 每个可登陆用户拥有一 ...

  7. Vue.js下载方式及基本概念

    Vue.js 简介 说明及下载 Vue.js使用文档已经写的很完备和详细了,通过以下地址可以查看: https://cn.vuejs.org/v2/guide/ vue.js如果当成一个库来使用,可以 ...

  8. JSON解析工具——Jackson的简单使用

    什么是Jackson 可以轻松实现Java对象与JSON字符串的转换 准备工作:导包 Jackson的jar all下载地址:http://jackson.codehaus.org/1.7.6/jac ...

  9. flex作图

    <?xml version="1.0" encoding="utf-8"?><s:Application xmlns:fx="htt ...

  10. 4 jdngo vue-rotue

    . 执行linux命令 与mac命令   git base 3 初始化操作  页面加载完成,发起请求  window.onload