题目:对10个数排序

mac2026-04-02  2

【分析】 对十个数进行排序 版本一:选择排序 版本二:冒泡排序


代码】

import java.util.Scanner; class Test28 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入10个整数:"); //定义一个长度为10的数组存储输入的数字 int[] arr = new int[10]; for(int i=0;i<10;i++){ arr[i] = sc.nextInt(); } //排序前遍历数组 traverse(arr); //调用选择排序 //select(arr); //调用冒泡排序 bubble(arr); //排序后遍历数组 traverse(arr); } //定义选择排序方法:第一个和后面的每个元素都依次比较,每轮结束确定当前第一个元素最小 public static void select(int[] arr){ for(int i=0;i<arr.length;i++){ for(int j=i;j<arr.length;j++){ if(arr[i]>arr[j]){ //调用swap方法 swap(arr,i,j); } } } } //定义冒泡排序:第一个先和第二个比较,然后第二个和第三个比较,依次两两进行比较,每轮确定当前最后一个元素最大 public static void bubble(int[] arr){ for(int i=0;i<arr.length;i++){ for(int j=0;j<arr.length-1-i;j++){ if(arr[j]>arr[j+1]){ //调用swap方法 swap(arr,j,j+1); } } } } //定义遍历方法 public static void traverse(int[] arr){ for(int i=0;i<arr.length;i++){ System.out.print(arr[i]+" ");//不换行遍历,以空格隔开 } System.out.println();//换行 } //定义交换数组元素的方法 public static void swap(int[] arr,int i,int j){ int temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } }

 

最新回复(0)