Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
int k = 0;
int temp = 0;
for (int i = 0; i < n; i++)
arr[i] = sc.nextInt();
for (int i = 0; i < arr.length - 1; i++) {// 做第i趟排序
k = i;
for (int j = k + 1; j < arr.length; j++) {// 选最小的记录
if (arr[j] < arr[k]) {
k = j; // 记下目前找到的最小值所在的位置
}
}
// 在内层循环结束,也就是找到本轮循环的最小的数以后,再进行交换
if (i != k) { // 交换a[i]和a[k]
temp = arr[i];
arr[i] = arr[k];
arr[k] = temp;
}
}
for (int i = 0; i < n; i++)
System.out.print(arr[i] + " ");
}
0.0分
0 人评分
人见人爱A+B (C语言代码)浏览:776 |
C语言程序设计教程(第三版)课后习题9.3 (C++代码)浏览:672 |
C语言程序设计教程(第三版)课后习题11.3 (C语言代码)浏览:1049 |
简单的a+b (C语言代码)浏览:647 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:1534 |
蓝桥杯历届试题-九宫重排 (C++代码)浏览:2783 |
这可能是一个假的冒泡法浏览:990 |
字符串比较 (C语言代码)答案错误????浏览:597 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:539 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:968 |