2021-2022-1 20211312《信息安全专业导论》第七周学习总结
作者:互联网
作业信息
这个作业属于哪个课程 | 2020-2021-1信息安全专业导论 |
---|---|
这个作业要求在哪里 | 2020-2021-1信息安全专业导论第7周作业 |
这个作业的目标 | 数组与链表、基于数组和基于链表实现数据结构、无序表与有序表、树、图、子程序与参数 |
作业正文 | https://i.cnblogs.com/posts/edit |
教材学习内容总结
-
所谓数组,就是相同数据类型的元素按一定顺序排列的集合;数组的存储区间是连续的,占用内存比较大,故空间复杂的很大。但数组的二分查找时间复杂度小,都是O(1);数组的特点是:查询简单,增加和删除困难;
- 优点:随机访问性强,查找速度快,时间复杂度是0(1)
- 数组的缺点:
- 从头部删除、从头部插入的效率低,时间复杂度是o(n),因为需要相应的向前搬移和向后搬移。
- 空间利用率不高
- 内存空间要求高,必须要有足够的连续的内存空间。
- 数组的空间大小是固定的,不能进行动态扩展。
-
所谓链表,链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域。 相比于线性表顺序结构,操作复杂。由于不必须按顺序存储,链表在插入的时候可以达到O(1)的复杂度,比另一种线性表顺序表快得多,但是查找一个节点或者访问特定编号的节点则需要O(n)的时间,而线性表和顺序表相应的时间复杂度分别是O(logn)和O(1)。
- 链表的优点:
- 任意位置插入元素和删除元素的速度快,时间复杂度是o(1)。
- 内存利用率高,不会浪费内存
- 链表的空间大小不固定,可以动态拓展。
- 缺点:随机访问效率低,时间复杂度是o(1)
- 链表的优点:
-
无序表API(仅实现了插入,查找操作)、有序表API(rank函数为键为k的值在表中的排名)
-
树是一种非线性的数据结构,是由n(n >=0)个结点组成的有限集合。
如果n==0,树为空树。
如果n>0,
树有一个特定的结点,根结点
根结点只有直接后继,没有直接前驱。
除根结点以外的其他结点划分为m(m>=0)个互不相交的有限集合,T0,T1,T2,…,Tm-1,每个结合是一棵树,称为根结点的子树。 -
树的结点包含一个数据和多个指向子树的分支
结点拥有的子树的数量为结点的度,度为0的结点是叶结点,度不为0的结点为分支结点,树的度定义为树的所有结点中度的最大值。 -
结点的直接后继称为结点的孩子,结点称为孩子的双亲。
结点的孩子的孩子称为结点的孙子,结点称为子孙的祖先。
同一个双亲的孩子之间互称兄弟。 -
在计算机科学中,子程序(英语:Subroutine, procedure, function, routine, method, subprogram, callable unit),是一个大型程序中的某部份代码,由一个或多个语句块组成。它负责完成某项特定任务,而且相较于其他代码,具备相对的独立性。
一般会有输入参数并有返回值,提供对过程的封装和细节的隐藏。这些代码通常被集成为软件库。
函数在面向过程的语言中已经出现。是结构(Struct)和类(Class)的前身。本身就是对具有相关性语句的归类和对某过程的抽象。 -
参数,也叫参变量,是一个变量。我们在研究当前问题的时候,关心某几个变量的变化以及它们之间的相互关系,其中有一个或一些叫自变量,另一个或另一些叫因变量。如果我们引入一个或一些另外的变量来描述自变量与因变量的变化,引入的变量本来并不是当前问题必须研究的变量,我们把这样的变量叫做参变量或参数。
教材学习中的问题和解决过程
- 问题:简单类型就是基本类型吗?
- 解决过程:上网查找相关资料,资料显示Java中的简单类型就是基本类型。
代码调试中的问题和解决过程
-无
代码托管
上周考试错题总结
- 无
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 20/20 | 2/2 | 20/20 | |
第二周 | 20/40 | 1/3 | 18/38 | |
第三周 | 100/140 | 1/4 | 22/60 | 克服对代码的恐惧 |
第四周 | 310/450 | 1/5 | 30/90 | 在学长的帮助下学会了利用CSDN |
第五周 | 350/800 | 1/5 | 30/120 | |
第六周 | 200/1000 | 1/6 | 10/130 | |
第七周 | 200/1200 | 1/7 | 10/140 |
-
计划学习时间:10小时
-
实际学习时间:10小时
参考资料
- 《计算机科学概论》
- 《看漫画学Python》
- 《Python零基础从入门到精通》
标签:链表,结点,20,数组,复杂度,20211312,2021,2022,代码 来源: https://www.cnblogs.com/xuyuanqi/p/15521332.html