Java案例:有序的将元素插入到数组中

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gdkyxy2013/article/details/81901077

       示例:有一个数组{12,22,45,67,88,100},现在需要将80插入这个数组中,保证数组有序,计算插入位置的下标,并且打印插入80之后的数组,结果应该为:插入位置的下标为4,插入80之后的数组为[12,22,45,67,80,88,100]。

【代码】

package com.xzw.csdn;

import java.util.Arrays;

/**
 * 示例:
 * 有一个数组{12,22,45,67,88,100},现在需要将80插入这个数组中,保证数组有序,计算插入位置的下标,
 * 并且打印插入80之后的数组,结果应该为:插入位置的下标为4,插入80之后的数组为[12,22,45,67,80,88,100]
 * @author xzw
 *
 */
public class Example {

	/**
	 * 主函数
	 * @param args
	 */
	public static void main(String[] args) {
		int[] array = {12,22,45,67,88,100};
		int index = -1;
		
		//获取下标
		for (int i = 1; i < array.length; i++) {
			if (array[i-1] <= 80 && array[i] >= 80) {
				index = i;
				break;
			}
		}
		
		//扩容
		array = Arrays.copyOf(array, array.length+1);
		
		//右移
		for (int i = array.length - 1; i > index; i--) {
			array[i] = array[i-1];
		}
		
		//添加80
		array[index] = 80;
		System.out.println("插入位置的下标为" + index + ",插入80之后的数组为" +Arrays.toString(array));
	}

}

你们在此过程中遇到了什么问题,欢迎留言,让我看看你们都遇到了哪些问题。

猜你喜欢

转载自blog.csdn.net/gdkyxy2013/article/details/81901077
今日推荐