排序算法03:插入排序
算法介绍 步骤: 1. 从第一个元素开始,该元素可以认为已经被排序 2. 取出下一个元素,在已经排序的元素序列中从后向前扫描 3. 如果被扫描的元素(已排序)大于新元素,将该元素后移一位 4. 重复步骤3,直到找到已排序的元素小于或者等于新元素的位置 5. 将新元素插入到该位置后 6. 重复步骤2~5 排序演示: 可视化效果: 这里 Javascript实现 /** * Created by YiYing on 2017/4/22. */ ( function (W) { function Insertion (arr) { this .arr = arr; } /** * 插入排序算法实现 */ Insertion.prototype.sort = function () { var len = this .arr.length; for ( var i= 1 ;i<len;i++){ //在已经有序之中,从后往前比对,依次交换,直到插入到正确的位置即可 for ( var j=i;j> 0 && this .less(j,j- 1 );j--){ this .exchange(j,j- 1 ); } } }; /** * 判断m是否小于n * @param m * @param n */ Insertion.prototype.less = function (m,n) { /