这个作业属于哪个课程 | <班级的链接>(如2020-2021-1信息安全专业导论) |
---|---|
这个作业要求在哪里 | <作业要求的链接>(如2020-2021-1信息安全专业导论第二周作业) |
这个作业的目标 | 了解计算机发展和基本组成,知道Linux系统和Windows的区别,优点及缺点。python基本了解 |
作业正文 |
教材内容总结
了解了计算系统和计算历史。对算法运算,图灵机有了初步了解.在云班课答题时依旧有困难。
教材学习中的问题和解决方案
-
问题1:奇偶校验位定义没看懂
- 解释的比较清晰 举例校验过程
11001100 =有4个1,4 为偶数 ,校验位为 0,则数据变为 11001100 0
11001101 =有5个1,5 为奇数 ,校验位为 1,则数据变为 11001101 1用处是确定传输代码的正确性 -
问题2:什么时候能用大O分析
- 解决方案:以下源自博客
先来看一个简单的栗子,来分析下下面这段代码的时间复杂度:
-
/**
-
* 累加求和
-
* @param n 数据规模 n->∞
-
* @return
-
*/
-
public int sum(int n){
-
int sum = 0;
-
int i = 0;
-
for (;i<n;i++){
-
sum = sum + i;
-
}
-
return sum;
-
}
上面是一个累加求和的方法
上面是一个累加求和的方法,假设每条语句的执行时间为单位时间unit_time,那这个方法对于数据规模n来说,总的执行时间为多少呢?
很容易看出,第7、8两行代码都只执行一次,各为unit_time,第9、10两行代码都执行n次,各为n*unit_time,所以总的时间相加得T(n)=unit_time+unit_time+n*unit_time+n*unit_time=(2n+2)*unit_time。
用f(n)来表示代码的执行次数和数据规模的关系,即f(n)=2n+2。当n趋近于无穷大时,f(n)中的常数项对于整个公式的值的影响可以忽略,同样,系数相比于数据规模n也可以忽略不计。最后变为f(n) = n,即总的执行时间T(n)与数据规模n成正比。上面的分析方法就是"大O表示法"的主要思想,用公式来表示就是:
n:数据规模,通俗点说就是函数中的那个变量n
f(n):代码总的执行次数和数据规模的关系
T(n):代码的执行时间(并不是代码实际的执行时间,这里表示代码执行时间和数据规模之间的关系)(这句话终于让我懂了)
-
代码调试中的问题和解决过程
-
问题1:输入代码显示not found command
- 解决方案:查找书籍,加强记忆。
-
问题2:输入代码时会忽略分隔符,空格等导致无法运行
-
解决方案:加强联系
代码行数(新增/累计) 博客量(新增/累积) 学习时间(新增/累积) 重要成长 目标 5000 30 450 第一周 200/200 2/2 18 第二周 50/250 3/5 15