1 package com.lovo; 2 3 public class Test5 { 4 public static void main(String[] args) { 5 int[] f=new int[10]; 6 System.out.println("排序前:"); 7 for(int i=0;i<f.length;i++){ 8 f[i] =(int) (Math.random()*100+1); 9 System.out.print(" "+f[i]); 10 } 11 /** 12 * 求最大,最小数 13 */ 14 15 int maxF1=f[0];int minF1=f[0]; 16 for(int i=1;i<f.length;i++){ 17 if(f[i]>maxF1){ 18 maxF1=f[i]; 19 } 20 else if(f[i]<minF1){ 21 minF1=f[i]; 22 } 23 } 24 System.out.println("\n"+"最大数是:"+maxF1+"\n"+"最小数是:"+minF1); 25 System.out.println("\n"+"排序后:"); 26 /** 27 * 简单选择排序法 28 */ 29 for(int i=0;i<f.length-1;i++){ 30 int minF=i; 31 for(int j=i+1;j<f.length;j++){ 32 if(f[j]<f[minF]){ 33 minF=j; 34 } 35 } 36 int t=f[i]; 37 f[i]=f[minF]; 38 f[minF]=t; 39 } 40 for(int x:f){ 41 42 System.out.print(" "+x); 43 } 44 /** 45 * 冒泡排序 46 */ 47 boolean swapped=true; 48 for(int i=1;swapped&&i<=f.length-1;i++){ 49 for(int j=0;j<f.length-1-i;j++){ 50 swapped=false; 51 if(f[j]>f[j+1]){ 52 int t=f[j]; 53 f[j]=f[j+1]; 54 f[j+1]=t; 55 swapped=true; 56 } 57 } 58 } 59 System.out.println(" "); 60 for(int x:f){ 61 System.out.print(" "+x); 62 } 63 for(int i=0;i<f.length;i++){ 64 for(int j=0;j<f.length;j++){ 65 if(f[i]>f[j]){ 66 int t=f[j]; 67 f[j]=f[i]; 68 f[i]=t; 69 } 70 } 71 } 72 System.out.println(" "); 73 for(int x:f){ 74 System.out.print(" "+x); 75 } 76 } 77 78 }
时间: 2024-10-13 14:32:51