题目,有一组数字,请将数字进行升序与降序排列(提示:利用冒泡排序)
解题:我们利用Java中的数组存放数字,然后利用冒泡排序于二重循环结合对数字进行升序,再进行降序
废话少说,上代码:
import java.util.Arrays;
public class Demo {
public static void main(String[] args) {
//题目:有一组数字,如下,请将数字进行升序于降序排列(提示:利用冒泡排序)
int[] num = {90, 88, 44, 66, 53, 94, 23, -12};
//解题思路:利用双重循环解决,内层循环中利用交替法比较数字的大小,第一次从第一位开始比较全部数字,
//每比较一次确定一个数字,那么内层循环可以-i(外层循环运行一次,内层循环运行一轮)
for (int i = 0; i < num.length - 1; i++) {
for (int j = 0; j < num.length - 1 - i; j++) {
if (num[j] < num[j + 1]) {
int temp = num[j];
num[j] = num[j + 1];
num[j + 1] = temp;
}
}
}
//数字升序结果
System.out.println("数字降序排列结果:\n" + Arrays.toString(num));
//对数字进行降序排列
System.out.print("数字升序排列结果:\n[");
for (int i = num.length - 1; i >= 0; i --) {
if (i != 0) {
System.out.print(num[i] + ", ");
} else {
System.out.println(num[i] + "]");
}
}
}
}
运行结果如下:
如有我未发现的bug,望各位大佬指点。
代码之路任重道远,我们并肩作战,加油!🤞🤞