将元素按排序顺序插入数组 [英] Inserting an element into an array in sorted order
本文介绍了将元素按排序顺序插入数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图按排序顺序将元素添加到数组中。
I'm trying to add an element into an array in sorted order.
这是我的代码:
public class SortedInsertion {
public static void main(String[] args) {
int[] arr=new int[6];
arr[0]=5;
arr[1]=6;
arr[2]=9;
arr[3]=11;
System.out.println(Arrays.toString(arr));
insert(7,arr);
}
public static void insert(int val,int[] arr){
int i;
for(i=0;i<arr.length-1;i++){
if(arr[i]>val)
break;
}
for(int k=i;k<arr.length-1;k++){
arr[k+1]=arr[k];
arr[i]=val;
}
System.out.println(Arrays.toString(arr));
}
}
我得到的输出为:
[5,6,9,11,0,0]
I'm getting the output as: [5, 6, 9, 11, 0, 0]
[5,6,7,9, 9,9]
[5, 6, 7, 9, 9, 9]
但正确的卖出权是
5,6,9,11,0, 0
5,6,9,11,0,0
5,6,7,9,11,0
5,6,7,9,11,0
推荐答案
像这样更改 insert
方法:
public static void insert(int val,int[] arr){
int i;
for(i=0;i<arr.length-1;i++){
if(arr[i]>val)
break;
}
for(int k=arr.length-2; k>=i; k--){
arr[k+1]=arr[k];
}
arr[i]=val;
System.out.println(Arrays.toString(arr));
}
这篇关于将元素按排序顺序插入数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文