Java-有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。

本文介绍了一种在已排序数组中插入新数的方法,并通过Java代码实现。该方法首先判断数组的排序方式(升序或降序),然后利用Arrays类进行数组扩容、排序或倒序输出,最终展示插入新数后的数组。

有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。

代码如下:

package com.homework.lhh;

import java.util.Arrays;
import java.util.Scanner;

public class Ex13 {
    @SuppressWarnings("resource")
    public static void main(String[] args) {
        int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };// 定义一个升序排序数组
        //int[] array = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 };// 定义一个降序排序数组
        System.out.print("定义的数组为:");
        for (int i = 0; i < array.length; i++) {
            System.out.print(array[i] + " ");
        }
        System.out.println();
        Scanner sc = new Scanner(System.in);
        System.out.print("请输入一个数:");
        int addNumber = sc.nextInt();
        array = Arrays.copyOf(array, array.length + 1);// 数组扩容
        array[array.length - 1] = addNumber; // 暂时将数组的最后一个数赋值为插入的数
        //判断数组是降序还是升序,对应其规律进行输出
        int i = 0;
        //当定义的数组为升序的时候
        if (array[i] <= array[array.length - 2]) {
            Arrays.sort(array);// 再次排序
            System.out.print("插入一个数后的数组为:");
            for (i = 0; i < array.length; i++) {
                System.out.print(array[i] + " ");
            }
        } else {//当定义的数组为降序的时候,数组进行倒序输出
            Arrays.sort(array);// 再次排序
            System.out.print("插入一个数后的数组为:");
            for (i = array.length - 1; i >= 0; i--) {
                System.out.print(array[i] + " ");
            }
        }
    }
}

运行结果如图:
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值