冒泡法

来源:互联网 发布:m.2固态推荐 知乎 编辑:程序博客网 时间:2024/04/27 17:36
 
package arithmetic;import java.util.Arrays;import Test.TestInterface;public class BubbleSort implements TestInterface   {public static void main(String args[]){int a [] = new int[] {4,5,1,3,6};//bubbleSortOne(a);bubbleSortOne(a);System.out.println(Arrays.toString(a));}/* * 这个冒泡准确的来说应该是沉底,把大的沉到了下面, * 下回比较的时候直接从0比较到上次比较到的前一个 * */public static void bubbleSortOne(int a[]){for(int i=0;i<a.length;i++)for(int j=0;j<a.length-i-1;j++)if(a[j]>a[j+1])swap(a,j,j+1);}/* * 插入法: * */public static void bubbleSortTwo(int a[]){for(int i=0;i<a.length;i++)for(int j=i;j>0&&a[j]>a[j-1];j--)swap(a,j-1,j);}public static void swap(int a[],int i,int j){int tmp = a[i];a[i] = a[j];a[j] = tmp;}public void test(int a[]){//bubbleSortOne(a);bubbleSortTwo(a);}}

原创粉丝点击