Java选择排序(升序和降序)
1、/** 选择降序排序 **/
public static int[] dascSort(int[] param) {
int in, out;
int max;
int temp;
for (out = 0; out < param.length; out++) {
// 默认最大数的位置
max = out;
for (in = out + 1; in < param.length; in++) {
if (param[max] < param[in]) {
// 获取最大数的位置
max = in;
}
}
// 当默认位置的最大数并不是实际的最大数时,和实际的最大数交换位置
if (out != max) {
temp = param[out];
param[out] = param[max];
param[max] = temp;
}
}
return param;
}
2、/** 选择升序排序 **/
public static int[] ascSort(int[] param) {
int in, out;
int max;
int temp;
for (out = param.length - 1; out > 0; out--) {
// 默认最大数的位置
max = out;
for (in = out - 1; in > 0; in--) {
if (param[max] < param[in]) {
max = in;
}
}
// 当默认位置的最大数并不是实际的最大数时,和实际的最大数交换位置
if (out != max) {
temp = param[out];
param[out] = param[max];
param[max] = temp;
}
}
return param;
}
3、执行升序和降序方法:
public static void main(String[] args) {
int[] param = { 1, 6, 7, 5 };
param = ascSort(param);
System.out.print("升序结果为:");
for (int i = 0; i < param.length; i++) {
System.out.print(param[i]);
}
System.out.println("");
param = dascSort(param);
System.out.print("降序结果为:");
for (int i = 0; i < param.length; i++) {
System.out.print(param[i]);
}
}
4、运行结果如下:
