JS案例:把一个新的数字,插入到一个数组中

把一个新的数字,插入到一个数组中
分情况考虑
1.如果arr是一个空数组
2.如果插入的数字比数组的每个元素都大
3.如果插入的数字比数组的每个元素都小
4.如果数组是倒序排列

<script>  
    var arr = [1, 3, 7, 6]
    // var arr = [7, 6, 2, 1]
    var n = 4
    if (arr.length == 0) {
        arr.push(n)
        console.log(arr);
    } else if (arr.length > 0 && arr[0] < arr[1]) {//将数组的元素从最后一个开始依次与x比较,若数组元素大于n,则后移,直到遇到一个不大于x的元素或所有元素都比较完了为止
        for (i = 0; i <= arr.length; i++) {
            if (n < arr[i])   //找到第一个比n大的数据
                break;
        }

        for (j = arr.length - 1; j >= i; j--) {
            arr[j + 1] = arr[j]
        }
        arr[i] = n
        console.log(arr)
    } if (arr.length > 0 && arr[0] > arr[1]) {

        for (i = 0; i <= arr.length; i++) {
            if (n > arr[i])
                break;
        }
        for (j = arr.length - 1; j >= i; j--) {
            arr[j + 1] = arr[j]
        }
        arr[i] = n
        console.log(arr)
    }
</script>
posted @ 2022-11-28 21:31  千帆qf  阅读(311)  评论(0)    收藏  举报