2021-2022-1 20211410周意凯《信息安全专业导论》第六周学习总结

 学习目标

    • Polya如何解决问题
    • 简单类型与组合类型
    • 复合数据结构
    • 查找与排序算法
    • 算法复杂度
    • 递归
    • 代码安全

教材学习内容总结

计算机科学概论

   搜索 :

      顺序搜索:一个一个数据对比到对

      有序数组二分检索:取中间的值进行比较,大向下小向上,再取比。

   排序:

      选择排序:

         需要两个完整列表的空间

         取出第一个,一个一个比,有更小的换出来,比完一边放一个最小值

         改进:取出一个数时有一个空位,不要完整列表,就拿一个数据的位置也行,更换时把原书放进更小数的原来位置

      冒泡排序:从最后的数据开始向前一项对比,小则向上,大则对前一项进行冒泡

         

   递归:算法调用它本身的能力

      分裂算法:

         第一个数作为splitVal,左边开始依次比较,选到大的停止,右边开始选到小的停,两数换位,继续向中。左到大数停,右出发重合时停止,分为两部分。交换第一个数和停止左边的数,完成分割且左边最大已排好。两边重复进行直达不可分割。

         排序很好,但是没有基础的比较机制,若数据已排好或分割过程中有一部分已经排好也不能停止。

          

看漫画学python

  第六章

    列表和元组属于序列,序列元素有序,列表可变,元组不可变。

    集合元素是无序的,且不能重复

    字典通过键来访问元素,由键(keys)视图和值(values)视图构成,键视图不能包含重复的元素

  第七章

    格式化字符串:  .format()  括号内加参数,可以定义参数名

      占位符{},可以有参数序号,序号0被第一个参数替换,也可以用参数名替换

      %作占位符时%s是字符串,%i或%d是整数,%f是浮点数,例:‘我是 %s, %d岁‘%(name,age)  #定义的格式化字符串内 %前有空格

 

算法复杂度

   算法复杂度是指算法在编写成可执行程序后,运行时所需要的资源,资源包括时间资源和内存资源。

   包括时间复杂度和空间复杂度两类

      时间复杂度:执行时间和,执行次数由编译成的机器语言执行次数决定吧。

      空间复杂度:执行时所需存储空间的度量,包括算法程序、输入的初始数据、执行过程中所需的额外空间

教材学习中的问题和解决过程

 

代码调试中的问题和解决过程

 

 

上周考试错题总结

其他(感悟、思考等,可选)

 写代码时可以多加注释

 

 

 

学习进度条

 

代码行数(新增/累积)

博客量(新增/累积)

学习时间(新增/累积)

重要成长

目标

5000行

30篇

400小时

 

第一周

0/0

2/2

15/15

 

第二周

0/0

2/4

20/35

 

第三周

300/300

1/5

22/57

 

第四周

500/800

2/7

23/80

 

第五周

600/1400 

3/10 

 16/96

     

第六周

600/2000 

3/13

16/112

 

 

posted @ 2021-10-31 21:05  周意凯  阅读(31)  评论(0编辑  收藏  举报