Arrays 将数组从最小到最大排序(不是气泡排序)
我需要查看一个Arrays 将数组从最小到最大排序(不是气泡排序),arrays,sorting,Arrays,Sorting,我需要查看一个数组(ar[]),找到最小的值(minimable),将它转移到ar2[]的索引[0],并将ar[]的数字替换为1000,这样我就可以循环并连续地将其他最小的数字放入ar2[] 公共类排序 { 公共静态void main(字符串参数[]) { int ar[]={6,7,2,1,5,9,4,2,3}; int i,j; int ar2[]=新int[9]; 最终整数=1000; 对于(i=0;i
数组(ar[])
,找到最小的值(minimable),将它转移到ar2[]
的索引[0]
,并将ar[]
的数字替换为1000,这样我就可以循环并连续地将其他最小的数字放入ar2[]
公共类排序
{
公共静态void main(字符串参数[])
{
int ar[]={6,7,2,1,5,9,4,2,3};
int i,j;
int ar2[]=新int[9];
最终整数=1000;
对于(i=0;i 对于(j=1;j这是对排序代码的修复:但这还不够好。它有O(n^2)复杂度,但其他算法有O(n*log2N)。请查看了解更多信息
for (i = 0; i < ar.length; i++) {
int smallest = ar[i];
int smallestIndex = i;
for (j = 0; j < ar2.length; j++) {
if (ar[j] < smallest) {
smallest = ar[j];
smallestIndex = j;
}
}
ar2[i] = smallest;
ar[smallestIndex] = ONE;
}
for(i=0;i
欢迎使用stackoverflow。如果您努力正确设置代码格式,您更有可能得到有用的答案。您还应该向我们解释代码的问题所在、当前输出是什么、应该输出什么以及到目前为止您试图解决的问题是什么?