算法的5大特征
- 输入
有0个或者多个输入数据,这些输入必须有清楚的描述和定义 - 输出
至少有1个或者多个输出结果,不可以没有输出结果 - 有穷性
算法在有限的步骤之后会自动结束而不会无限循环,并且每一个步骤可以在可接受的时间内完成 - 确定性
算法中的每一个步骤都有确定的含义,不会出现二议性 - 可行性
算法的每一步都是清楚且可行的,能让用户用纸和笔计算而求出答案、
说明:满足确定性的算法也可以称为:确定性算法。现在人们也关注更广泛的概念,例如考虑各种非确定性的算法,如并行算法,概率算法等。另外,人们也关注并不要求终止的计算描述,这种描述有时也被称为过程
1.选择排序
直接选择排序,堆排序
2.交换排序
冒泡排序,快速排序
3.插入排序
直接插入排序,折半排序,shell排序
4.归并排序
5.桶式排序
6.基数排序