牛骨文教育服务平台(让学习变的简单)
博文笔记

java中在一个数组中插入一个新的值

创建时间:2007-09-29 投稿人: 浏览次数:3983
  // 把关键字插入已经排好序的数组a中,由于a的大小不能变化,所以需要申请一个更大的空间,然后把插入key的a 数组copy到一个新的数组b中,输出插入后的数组。       static int[] insertArray(int a[], int key)     {        int i,j;        int b[];        i=a.length-1;        b=new int[a.length+1];//申请一个更大的空间               Arrays.sort(a);//使用java.util.Arrays.sort 方法对一个数组进行排序              //找到插入位置i        while(i>=0 && key<a[i])            i--;        if(i<0)        {            b[0]=key;            for(j=1;j<=a.length;j++)               b[j]=a[j-1];     //i<0说明key比a[]中所有值都小,所以插在数组最前面        }        else        {        for(j=0;j<=i;j++)        {            b[j]=a[j];    //a[0....i] copy 到b[0....i]        }        b[i+1]=key;        for(j=i+2;j<=a.length;j++)            b[j]=a[j-1];        }        return b;                   }  
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。