2021-2022-1 20211308《信息安全专业导论》第七周学习总结
2021-2022-1 20211308《信息安全专业导论》第七周学习总结
作业信息
|作业属于哪个课程|
信息安全专业导论
|作业要求链接|
第七周作业
|作业正文|
实现进制转换伪代码
斐波那契数列递归实现
求最大公约数伪代码
本文链接
|作业目标|
- 数组与链表
- 基于数组和基于链表实现数据结构
- 无序表和有序表
- 树
- 图
- 子程序与参数
教材内容总结
- 数组
数组是同构项目的有名集合,可以通过索引来访问单个项目在集合中的位置,采用0开始到9结束的方式。
如果数组被定义为numbers,可以通过表达式numbers[position]来访问
下面是像数组中加入值的算法
interger numbers[10]
Write "Enter 10 interger numbers, one per line"
Set position to 0
While(position <10)
Read in numbers[position]
Set position to position + 1
- 可以对数组进行搜索、排序、处理
- 搜索:寻找数组中的项,可以是特定的数值
- 排序:按照顺序将元素放进数组
- 处理:包含对数组中的项所做的所有其他计算
- 数据结构
一种抽象数据类型中的复合数据域的实现 - 容器
存放和操作其他对象的对象 - 栈
“后进先出”:可以在第一个位置插入元素,也可以删除第一个元素
可以类比为餐具架,插入的操作叫做Push,删除操作叫做Pop,而我们需要确定栈是否为空,否则会出现错误 - 队列
“先进先出”插入位置在队末进行,删除操作在队列头部进行。 - 列表
三个属性- 项目是同构的
- 项目是线性的
- 列表是变长的
列表也可以被形象化为链式结构
- 链式结构
一种将数据项和找到下一项位置的信息保存到同一容器的实现方法 - 无序列表
不注重顺序,项目只是随意地被放入其中。 - 有序列表
项目之间具有语义的关系,除了第一个项目之外的所有项目都存在某种排序关系,除了最后一个项目,所有的项目都有相同的关系。 - 树
之前所描述的列表、栈、队列都是线性关系,只模拟了一种数据关系,而更加具体的更加复杂的关系可以用树来描述
就类似树状图,我们在计算领域,所说的通常是二叉树
树的头部是一个起始点,叫做根
没有”子女“的树节点称为叶节点 - 在二叉检索树中搜索
首先比较根节点,如果大于一定在于右子树中,继续比较直到找到匹配的值 - 图
刚才提到树是表示存在层次关系的一种有效方式,也就是说一个节点至多只有一个指向他的节点,如果去掉这种约束,就得到了另外一种数据结构--图,图中的节点叫做顶点、图中的线段叫做边。- 有向图
- 无向图
- 图的三种经典搜索算法
- 深度优先搜索
首先用深度优先搜索来搜索第一个与起点相邻的顶点,如果他是终点则结束、否则检查所有与第一个顶点相邻的顶点 - 广度优先搜索
在广度优先搜索中,我们想要回溯到尽可能远,因此栈不再是一个适合寻找较早路径的数据结构,它是按照元素出现的相反顺序来保存元素,即最晚的路径在顶部
,因此不再使用栈,而是使用队列,就可以解决这个问题 - 单源最短路搜索
是一个数学问题,书上讲的不是很详细
https://blog.csdn.net/fuckguidao/article/details/79053877
附上一篇博客链接,看完这篇博客,我还是深受启发。
- 深度优先搜索
- 子程序
如何在算法和子算法之间传递信息,在讨论语言的构造时,我们常用子程序来介绍。
比如
Set x to m*sin(t)
Set y to abs(z)
sin()和abs()都是有返回的子程序
- 参数
- 形参:列在子程序名后的括号中的标识符
- 实参:子程序在调用中列在括号中的标识符
- 值参:由调用单元传入实参的副本
- 引用参数:由调用单元传入实参的地址的实参
python学习
上周错题总结
无
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 200/200 | 2/2 | 20/20 | |
第二周 | 300/500 | 2/4 | 20/40 | |
第三周 | 500/1000 | 3/7 | 20/60 | |
第四周 | 300/1300 | 5/12 | 25/85 | |
第五周 | 150/1450 | 3/15 | 20/105 | |
第六周 | 150/1600 | 3/18 | 15/120 | |
第七周 | 400/2000 | 4/22 | 20/140 |
感悟
这周集中学习了一下python,对python的语法进行了熟悉,准备在接下来的学习中去运用代码,继续加油。