java 在数组{1,2,3,4,6,7,8,9,10}中插入一个数5,使其插入完成后仍然有序
1、需要实现的效果

2、代码实现
import java.util.Scanner; /*
* 11.在数组{1,2,3,4,6,7,9,8,10}中插入一个数5,
* 使其插入完成后仍然有序,运行结果如下:
*/
public class Test11 {
public static void main(String[] args) {
int a = 5;
int b = 0; //用于纪录需要插入数字的下标
int[] array = {1,2,3,4,6,7,8,9,10};
System.out.println("原来的数组为:");
for (int i : array) {
System.out.print(i + ", ");
}
System.out.println();
//找下标,并用b纪录
for (int i = 0; i < array.length-1; i++) {
if (a < array[i]) {
b = i;
break;
} }
//定义一个新数组,大于下标的数后移一位
int[] newarr = new int[array.length+1];
for (int i = newarr.length-1; i >= 0; i--) {
if (i > b) { //当数组下标比插入数的下标大时,后移一位
newarr[i] = array[i-1];
}else if(i == b){ //下标相等时赋值
newarr[i] = a; }else if (i < b) { //数组下标比插入数下标小,相等赋值
newarr[i] = array[i];
}
}
System.out.println("插入后的数组:");
for (int i : newarr) {
System.out.print(i + ", ");
}
}
}
java 在数组{1,2,3,4,6,7,8,9,10}中插入一个数5,使其插入完成后仍然有序的更多相关文章
- Java(数组)动手动脑
1>数组作为方法参数 阅读并运行示例PassArray.java,观察并分析程序输出的结果,小结,然后与下页幻灯片所讲的内容进行对照. 源代码: // PassArray.java // Pas ...
- java之数组
数组概述: 1.数组可以看成是多个相同数据类型数据的组合,对这些数据的统一管理. 2.数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量. 3.数组中的元素可以是任何类型 ...
- Java基础——数组应用之StringBuilder类和StringBuffer类
接上文:Java基础——数组应用之字符串String类 一.StringBuffer类 StringBuffer类和String一样,也用来代表字符串,只是由于StringBuffer的内部实现方式和 ...
- Java基础——数组应用之字符串String类
字符串String的使用 Java字符串就是Unicode字符序列,例如串“Java”就是4个Unicode字符J,a,v,a组成的. Java中没有内置的字符串类型,而是在标准Java类库中提供了一 ...
- Java基础——数组Array
一.数组基本概念 数组是相同类型数据的有序集合. 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成.其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们. 数组有三 ...
- JSon_零基础_007_将JSon格式的"数组"字符串转换为Java对象"数组"
将JSon格式的"数组"字符串转换为Java对象"数组". 应用此技术从一个json对象字符串格式中得到一个java对应的对象. JSONObject是一个“n ...
- java将数组中的零放到末尾
package com.shb.java; /** * 将数组中的0放到数组的后边,然后原来的非零数的顺序不改变 * @author BIN * */ public class Demo2{ publ ...
- Java RGB数组图像合成 ImageCombining (整理)
/** * Java RGB数组图像合成 ImageCombinning (整理) * * 2016-1-2 深圳 南山平山村 曾剑锋 * * 注意事项: * 1.本程序为java程序,同时感谢您花费 ...
- java对象数组
问题描述: java 对象数组的使用 问题解决: 数组元素可以是任何类型(只要所有元素具有相同的类型) 数组元素可以是基本数据类型 数组元素也可以是类对象,称这样的数组为对象数组.在这种情况下 ...
随机推荐
- 在一台机上搭建多个MYSQL并设置主从
安装 cd /usr/local/src/ -linux2.-x86_64.tar.gz -linux2.-x86_64 /usr/local/mysql grep mysql /etc/passwd ...
- Redis和SpringBoot整合RedisUtils类
一.引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...
- Async await 异步编程说明
希望在编程上有些许提高所以 最近连续2篇博客都在说明多线程和异步编程的使用,异步和多线程之间区别请自行百度,因为理解不是特别透彻就不在叙述以免误导大家,这里写下新研究整理 task 和 await ...
- fedora28 安装automake
yum install automake yum install hg //版本管理
- C++11 auto 与 右值
auto: auto T = xxx; // 产生一个变量,自动推导变量类型. 存在变量拷贝的消耗.auto& T = xxx; // 产生一个变量的引用,自动推导变量类型.减少拷贝的消耗. ...
- vue for 循环例子 2
demo <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf- ...
- Redis探索之路(四):Redis的五种数据类型Set和ZSet
一:Set无需集合 Set是个集合,string类型的无需集合,通过hash table实现,添加删除查找复杂度都是0(1).对集合我们可以取并集,交集和差集.通过这些操作我们可以实现sns中的好友推 ...
- Eureka的表兄弟Zookeeper理论基础
Eureka的表兄弟Zookeeper 简单介绍 Zookeeper是一个开源的分布式应用程序协调服务器,主要功能包括配置维护,域名服务,分布式同步,集群管理等 主要功能简介 一.配置维护 分布式系统 ...
- (getElementBy**)与 querySelector(querySelectorAll) 的区别
1. 通过类似于 document.getElementByTagName('div') 这种方式获取到的类数组,无法通过 forEach 进行遍历(可以通过for循环):而通过document.qu ...
- bzoj1037题解
[解题思路] DP.f[i][j][x][y]表示已选了i个♂和j个♀,其中♂比♀多x,♀比♂多y(x,y≥0). 递推式转移方程: (f[i+1][j][x+1][max(y-1,0)]+=f[i] ...