插入排序就是将 待排序的元素插入到已经排序好的数组中
    插入排序.gif

    1. /**
    2. * 插入排序
    3. *
    4. */
    5. const arr = [1,3,5,7];
    6. const target = [2,4, 10, 6];
    7. /**
    8. * 插入排序 方法一
    9. * @param {*} arr
    10. * @param {*} target
    11. */
    12. function selection_sort(arr, target) {
    13. for(let r = 0; r < target.length; r++) {
    14. for(let l = arr.length; l > 0; l--) {
    15. if(arr[l - 1] > target[r]) {
    16. arr[l] = arr[l - 1];
    17. }else {
    18. arr[l] = target[r]
    19. break;
    20. }
    21. }
    22. }
    23. return arr
    24. }
    25. /**
    26. * 方法二
    27. * @param {*} arr
    28. * @param {*} target
    29. * @returns
    30. */
    31. function selection_sort(arr, target) {
    32. for(let r = 0; r < target.length; r++) {
    33. let l = arr.length;
    34. while(l > 0 && arr[l - 1] > target[r]) {
    35. arr[l] = arr[l - 1];
    36. l--;
    37. }
    38. arr[l] = target[r]
    39. }
    40. return arr
    41. };
    42. console.log(selection_sort(arr, target))