LL原来的代码逻辑有一些问题,不知道是不是拷贝的时候出错了。我复制进Eclipse修改的时候红叉叉好多import java.util.Scanner;
import javax.swing.*;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
int n = Integer.parseInt(JOptionPane.showInputDialog("请输入数组规模:"));
int num[] = new int[n];
Scanner in = new Scanner(System.in);
int i;
System.out.println("请输入数组的值");
for (i = 0; i < num.length; i++)
num[i] = in.nextInt();
int[] b = shuzu(num,in);
for (i = 0; i < num.length; i++)
System.out.print(b[i] + " ");
}
//选择排序 从小到大
public static int[] shuzu(int a[],Scanner in) {
int j, i, temp,mini;
for (i = 0; i < a.length; i++) {
//mini用于存储最小值的下标
mini = i;
//temp用于存储最小值
temp = a[i];
//下面这个循环结束后,最小值存在temp里,最小值的下标存在j中
for (j = i+1 ; j < a.length; j++) {
if (a[j] <= temp)
{
mini = j;
temp = a[j];
}
}
//此时进行交换
temp = a[i];
a[i] = a[mini];
a[mini] = temp;
}
return a;
}
}
这个是可以正常运行的代码
请输入数组的值
5 4 3 0 0
0 0 3 4 5 |