冒泡排序:就是整个过程就像气泡一样往上升,单向冒泡排序的思想就是(假设有小到大的排序):对于指定的n个记录,从第一个记录开始依次对相邻的两个记录进行比较,当前面的记录大于后面的记录时,交换位置,进行一轮比较和换位后,n个记录中的最大值将位于第n位,然后对前(n-1)个记录进行第二轮比较;重复该过程直到进行比较记录只剩下一个为止。
例:以数组{36,25,48,12,25,65,43,57}为例,冒泡排序程序如下:
package com.company;/** * Created by Administrator on 2019/1/20. */public class Mpsort { public static void main(String[] args) {// 冒泡排序 int[] arr={36,25,48,12,25,65,43,57}; System.out.println("冒泡排序前的顺序:"); for(int i=0;iarr[j+1]){ int temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } } }}
选择排序:就是从未排序中选择最小的元素放入到已排序元素的最后面,程序代码如下:
package com.company;/** * Created by Administrator on 2019/1/20. */public class Xzsort { public static void main(String[] args) {// 选择排序 int[] arr={36,25,48,12,25,65,43,57}; System.out.println("排序前的数组:"); for(int i=0;iarr[j]){ int temp=arr[i]; arr[i]=arr[j]; arr[j]=temp; } } } }}