作业信息
<班级的链接>(2020-2021-1信息安全专业导论)|
<作业要求的链接>(2020-2021-1信息安全专业导论第六周作业)|
- 学习目标
Polya如何解决问题
简单类型与组合类型
复合数据结构
查找与排序算法
算法复杂度
递归
代码安全
教材学习内容总结
教材第七章
介绍了Polya,是一种解决问题的思路,应用在解决计算机问题方面主要是分析和说明、算法开发阶段、试验阶段、维护阶段。
介绍了数组的记录和索引,其中索引的方法介绍了顺序搜索和二分检索,其中二分检索是很好的一种排除大部分检索范围的方法。
关于数组的排序,有选择排序、冒泡排序、插入排序的方法。
介绍了递归算法,一种算法调用它本身的能力。
Python第六章和教材的内容有相似的地方,介绍了序列、列表、元组、集合、字典的建立、增加和删除,字典还学习了遍历。
Python第七章学习字符串,包含字符串的表示方法、与数字间的相互转换、格式化、操作等。
教材学习中的问题和解决过程
- 问题1:不理解教材P149上写“它需要两个完整数组的空间”
- 问题1解决方案:细读教材,看了两杯水如果要进行交换需要第三个空杯子的道理进行类比就理解了。
- 问题2:对递归算法的概念不是很清晰,是一段代码中调用了自己定义的函数或者自己就算是递归算法吗?
- 问题2解决方案:“递归是另一种重复的控制结构,这种算法使用一个选择语句来确定是否重复算法来确定是否重复算法来调用一遍或停止这种算法,而不是使用个循环语句执行一个算法。”![]
代码调试中的问题和解决过程
- 问题1:我在运行操作字符串章节学习的代码时总是和原文的结果不一样
- 问题1解决方案:对比其它类似句子的代码,发现了自己将字母l打成了数字1
- 问题2:在Linux中运行代码的时候总会出现“无法读取文本”的情况
- 问题2解决方案:打开了其他的Python文件发现并没有问题,排除了程序本身的问题,然后意识到自己在保存的时候忘记加.py,变成了文本形式保存。
代码托管
其他(感悟、思考等,可选)
本周的教材和Python的学习内容上有相互呼应的内容,二者相互辅助理解,自己对元素的理解更到位了一些,在实践Pep/16的时候体会到了一步一步解决问题的细致感,利于自己建立起计算机算法的编辑思维,十分有效。
几种对数字排序和处理的解决方法有效的丰富了自己的知识,在Python的实践过程中也出现了一些小的细致方面的问题,还需要再细致一点。
本周每天坚持打卡练习代码,发现自己的学习进度可以往前赶超,事实证明每次不用很多,但是重在坚持。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 |
目标 | 5000行 | 30篇 | 400小时 |
第一周 | 200/200 | 2/2 | 20/20 |
第二周 | 200/400 | 2/4 | 18/38 |
第三周 | 200/600 | 1/5 | 20/58 |
第四周 | 300/900 | 3/8 | 21/79 |
第五周 | 100/1000 | 3/11 | 18/97 |
第六周 | 150/1150 | 1/12 | 12/109 |
- 计划学习时间:10小时
- 实际学习时间:12小时
- 改进情况:本周的学习任务不是很多,时间安排比较合理,较为恰当地完成了本周的作业。