-
原理:从后向前进行排序
例如求升序,即将‘最小值’插入到前面,两层嵌套for循环,第一层循环主要是选出目前执行的位置序号,第二层循环选出小的值进行交换;
如果后者比前者小,就交换,交换后的后者再和前一个比,直到比前一个大,就跳出内层循环,执行外层循环 -
js代码:
-------------------------------升序---------------------------------------------- function insertS(a){ for(let i=1;i<a.length;i++){ for(let j=i;j>0;j--){ if(a[j]<a[j-1]){ [a[j],a[j-1]] = [a[j-1],a[j]] }else{break;} } } return arr } var arr = [3,5,1,2,6,88,54,32,4,66,0,22] insertS(arr) // -----------------------------降序-------------------------------------------------- ‘<’改成‘>’ 好像就行了哈哈哈
网友评论