算法和排序

什么是算法?

高德纳在《计算机程序设计艺术》里对算法的归纳:

  1. 输入:一个算法必须有零个或以上的输入量
  2. 输出:一个算法应有一个或以上输出量
  3. 明确性:算法的描述必须无歧义,实际运行结果是确定的
  4. 有限性:必须在有限个步骤内结束
  5. 有效性:又称可行性。能够被执行者实现

举个例子,现在有这么一个需求,在一个只有正整数的数组里,通过从大到小的方式来把它做一个排序,代码如下:

var arr = [1,5,88,9,4,7]
function sort(){
    //你的代码
}
console.log(sort(arr))

visualgo里面有一些思路实现的模拟,有兴趣的可以点击去看一下

书籍推荐:《数据结构与算法分析》

你可能感兴趣的:(算法和排序)