高亮啊

import java.util.*;
public class demo1 {

	/*
	 * ================================================================
	 * 题目2:有一组数为1,3,5,7,9,保存在一个数组中,现接受用户输入一个整数6, 要求将6插入到数组中,
	 * 且保持数组中元素仍按从小到大排序
	 * 分析:(1)首先数组长度为6,来保证插入数6后数组长度够长 (2)先从第一个元素开始查找,整数6可以插入的位置
	 * (3)从最后一个元素开始到插入的位置止,所有的元素都向后移动一位,来空出要插入数据的位置 (4)空出插入位置后,
	 * 将6插入即可
	 * ================================================================
	 */
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		int[] no = new int[] { 1, 3, 5, 7, 9, 0 }; // 在数组中用0来占据一个空间放在最后
		System.out.print("请输入一个数:");
		int num = input.nextInt();
		int i = no.length - 1; // 保存插入位置

		// (1)先从第一个元素开始查找可以插入的位置
		for (int j = 0; j < no.length - 1; j++) {
			if (no[j] > num) {
				i = j;
				break;
			}
		}

		// (2)从最后一个元素开始到插入的位置止,所有的元素都向后移动一位,来空出要插入数据的位置
		for (int j = no.length - 1; j > i; j--) {
			no[j] = no[j - 1];
		}

		// (3)空出插入位置后,将我们输入的数插入即可
		no[i] = num;

		System.out.println("\n从小到大排序输出:");
		for (int j = 0; j < no.length; j++) {
			System.out.print(no[j] + "\t");
		}

	}
}
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值