在本教程中,我们将看到如何在按升序和降序进行排序。使用冒泡排序算法降序排序。
冒泡排序程序,按升序排序
import java.util.Scanner;class BubbleSortExample { public static void main(String []args) { int num, i, j, temp; Scanner input = new Scanner(System.in); System.out.println("Enter the number of integers to sort:"); num = input.nextInt(); int array[] = new int[num]; System.out.println("Enter " + num + " integers: "); for (i = 0; i < num; i++) array[i] = input.nextInt(); for (i = 0; i < ( num - 1 ); i++) { for (j = 0; j < num - i - 1; j++) { if (array[j] > array[j+1]) { temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } } } System.out.println("Sorted list of integers:"); for (i = 0; i < num; i++) System.out.println(array[i]); }}
输出:
Enter the number of integers to sort:6Enter 6 integers: 1267894508Sorted list of integers:689124578
冒泡排序程序,按降序排序
为了按降序排序,我们只需要将上面程序中的数组array的逻辑从array[j] > array[j+1]更改为array[j] < array[j+1]。完整代码如下:
import java.util.Scanner;class BubbleSortExample { public static void main(String []args) { int num, i, j, temp; Scanner input = new Scanner(System.in); System.out.println("Enter the number of integers to sort:"); num = input.nextInt(); int array[] = new int[num]; System.out.println("Enter " + num + " integers: "); for (i = 0; i < num; i++) array[i] = input.nextInt(); for (i = 0; i < ( num - 1 ); i++) { for (j = 0; j < num - i - 1; j++) { if (array[j] < array[j+1]) { temp = array[j]; array[j] = array[j+1]; array[j+1] = temp; } } } System.out.println("Sorted list of integers:"); for (i = 0; i < num; i++) System.out.println(array[i]); } }
输出:
Enter the number of integers to sort:6Enter 6 integers: 891245956102Sorted list of integers:102895645129
