当前位置: 代码迷 >> Eclipse >> java的一道题,详细的帮小弟我解释一下。多谢大家
  详细解决方案

java的一道题,详细的帮小弟我解释一下。多谢大家

热度:37   发布时间:2016-04-23 13:28:25.0
java的一道题,详细的帮我解释一下。谢谢大家!
一个按照由大到小排列的数组{85,63,49,22,10}它的最后一个元素没有赋值,现在要插入一个数值。仍保持数组中的由大到小排列  
后面的 那个新 插入的 数值 ,怎么弄

------解决方案--------------------
从后插入(噢...不要想歪了)
Java code
import java.util.Arrays;public class Test {    public static void main(String[] args) {        int[] ns = {85, 63, 49, 22, 10, 100000}; // 用100000表示这个位置是空的,没有元素        int key = 30; // 在这个数组中插入30.                for (int i = ns.length - 1; i > 0; --i) {            if (ns[i - 1] < key) {                int temp = ns[i];                ns[i] = ns[i - 1];                ns[i - 1] = temp;            } else {                ns[i] = key;                break; // 找到插入的正确位置,插入后退出循环            }        }                // 输出结果        System.out.println(Arrays.toString(ns));    }}
  相关解决方案