算法初级

2018-07-03  本文已影响0人  Frank_io

伪代码与流程图

机构化编程

  1. 一行一行的执行代码
  2. 有条件控制语句 if...else...
  3. 有循环控制语句while(exp) do...

伪代码

我理解的伪代码就是用自己的语法写的代码语句

伪代码的好处

  1. 不用纠结于语法的细节,语法是自己定的
  2. 可以对比语言设计者的想法,从而加深印象

我的语法

a <= 1 表示将1赋值给了a

if xxx
  1
elseif yyy
  2
else
  3
end
n <= 0
while n < 10
  print n
n <= n+1
end

流程图

流程图

一个最简单的例子

从正整数数组a里面找出最小的数字,并打印出来

a  <= {
'0' : 23
'1' : 43
'2' : 230
'3' : 1321
'4' : 90
'length' : 5
}
min <= a['0']
index <= 1
while index < a['length']
  if a[index] < min
    min <= a[index]
    end
    index <= index + 1
end
print min

什么是算法

维基百科定义为算法是一个表示为有限长列表的有效方法

算法的特征归纳

什么是数据结构

简单来说就是数据的结构

  1. 我们要解决一个跟数据相关的问题
  2. 分析这个问题,想出对应的数据结构
  3. 分析数据结构,想出算法

排序算法

  1. 冒泡排序
  2. 选择排序
  3. 插入排序
  4. 基数排序
  5. 快排
  6. 归并排序
  7. 队排序等
    推荐一个排序可视化网站:https://visualgo.net/bn/sorting
上一篇下一篇

猜你喜欢

热点阅读