Java:冒泡排序法 和 选择排序

来源:互联网 发布:淘宝千里眼软件怎么样 编辑:程序博客网 时间:2024/05/17 23:19

冒泡排序:

package com.imooc;public class arrayDemo {public static void main(String[] args) {    int[] arr={23,34,12,2,13,31,56,98};System.out.println("排序前的数组为:");for(int m:arr)//尤其注意这里是冒号不是分号{System.out.print(m+" ");}System.out.print("\n");//冒泡排序int temp;int n=arr.length;for(int i=0;i<n-1;i++)//扫描arr,length-1次{for(int j=0;j<n-i-1;j++)//每次比较arr[n-i-1]和arr[n-i-2]{if(arr[j]>arr[j+1]){temp=arr[j];arr[j]=arr[j+1];arr[j+1]=temp;}}}//foreach输出System.out.println("排序后的数组为:");for(int m:arr){System.out.print(m+" ");}   }

选择排序:

package com.imooc;public class arrayDemo {public static void main(String[] args) {    int[] arr={23,34,12,2,13,31,56,98};System.out.println("排序前的数组为:");for(int m:arr)//尤其注意这里是冒号不是分号{System.out.print(m+" ");}System.out.print("\n");//选择排序int temp;int i,j,k;int n=arr.length;for(i=0;i<n-1;i++){k=i;//将为排序中最小的下标赋值给kfor(j=i+1;j<n;j++)//固定数组中的第一个数,让后面的所有数字和其进行比较{if(arr[j]<arr[k]){k=j;}}//将最小值放置在最前面temp=arr[k];arr[k]=arr[i];arr[i]=temp;}//foreach输出System.out.println("排序后的数组为:");for(int m:arr){System.out.print(m+" ");}   }}