zoukankan      html  css  js  c++  java
  • 2019-2020 191316《信息安全专业导论》第六周学习总结

    教材学习内容总结

    Polya如何解决问题,学习了不同的算法,了解了不同的排序方法并尝试使用。了解了几个重要思想。

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

    问题1:对各种排序算法略有混淆,希望能分清。
    解决方案:在博客园上找到了相关文章,首先分清了冒泡排序和选择排序https://www.cnblogs.com/Good-good-stady-day-day-up/p/9055698.html
    冒泡排序:从左到右或从下到上,数组中相邻的两个元素进行比较,将较大的放到后面或上面。
    选择排序:从第一个位置开始比较,找出最小的,和第一个位置互换,开始下一轮。
    关于改进方面,在看有关改进冒泡排序的文章里看到了一种改进方法:双向冒泡。不同之处在于“从左至右与从右至左两种冒泡方式交替执行”,但有人认为不能提高算法效率并且增加代码复杂度。https://www.cnblogs.com/heyuquan/p/bubble-quick-sort.html在此篇博客里看到了快速排序的改进方法及代码实现。
    我另外找到了一篇介绍各种算法程序比较全面的文章https://www.cnblogs.com/wolf-sun/p/4312475.html
    问题2:对伪代码的写法不是特别明晰
    解决方案:查了资料,总结如下
    1.在伪代码中,每一条指令占一行(else if,例外)。指令后不跟任何符号(Pascal和C中语句要以分号结尾)。
    2.书写上的“缩进”表示程序中的分支程序结构。这种缩进风格也适用于if-then-else语句。用缩进取代传统Pascal中的begin和end语句来表示程序的块结构可以大大提高代码的清晰性;同一模块的语句有相同的缩进量,次一级模块的语句相对与其父级模块的语句缩进。
    例如:
    line 1
    line 2
    sub line 1
    sub line 2
    sub sub line 1
    sub sub line 2
    sub line 3
    line 3
     
    3.在伪代码中,通常用连续的数字或字母来标示同一即模块中的连续语句,有时也可省略标号。
    4.赋值语句用符号←表示,x←exp表示将exp的值赋给x,其中x是一个变量,exp是一个与x同类型的变量或表达式(该表达式的结果与x同类型);多重赋值i←j←e是将表达式e的值赋给变量i和j,这种表示与j←e和i←e等价。
    5.选择语句用if-then-else来表示,并且这种if-then-else可以嵌套
    例如:
    if (Condition1)
    then [ Block 1 ]
    else if (Condition2)
    then [ Block 2 ]
    else [ Block 3 ]
    6.循环语句有三种:while循环、repeat-until循环和for循环,其语法均与Pascal类似,只是用缩进代替begin - end;
    例如:

    1. x ← 0
    2. y ← 0
    3. z ← 0
    4. while x < N
      1. do x ← x + 1
      2. y ← x + y
      3. for t ← 0 to 10
        1. do z ← ( z + x * y ) / 100
        2. repeat
          1. y ← y + 1
          2. z ← z - y
        3. until z < 0
      4. z ← x * y
    5. y ← y / 2
      7.伪代码可以用英文、汉字、中英文混合表示,以便于书写和阅读为原则。用伪代码写算法并无固定的、严格的语法规则,只要把意思表达清楚,并且书写的格式要写成清晰易读的形式。


    问题3:记不住书上的概念
    解决方案:常翻书,类比记忆或者通过做题来记概念

  • 相关阅读:
    挑战图像处理100问(15)——Sobel滤波器
    图像处理作业4——图像金字塔多尺度特征提取(初始版)
    林sir课程学习proj9——Socket错误代码10040
    如何查看OpenCV中函数的源代码
    VS编译提示:无法打开xxx.exe进行写入
    OpenCV鼠标响应函数(setMouseCallback)
    EasyBCD误删win10启动项后的修复方法
    图像查看器--能同时打开多个图片
    win10配置opencv4.0.0+pycharm2018.2.5+python3.7.1
    查看数据库内产生了哪些锁
  • 原文地址:https://www.cnblogs.com/ffffatal/p/11808603.html
Copyright © 2011-2022 走看看