java 算法基础之五快速排序法
快速排序法与一般的冒泡排序法差不多,区别可能就是冒泡会不断的交换,而快速排序法先找到最小的那个值,然后把这个最小值放在数组的最前面,游标往下走,
举个例子:
原数组:4,5,1,7,6
第一趟:1,5,4,7,6
第二趟:1,4,5,7,6
第三趟:1,4,5,6,7
这个原理比较简单。
代码由下:
class Select { public void select_sort(int[] arrays){ int min=0; int begin=0; for(int i=0;i<arrays.length;i++){ for(int j=i;j<arrays.length;j++){ if(arrays[j]<arrays[min]){ min=j; } } // System.out.println(min); snp(arrays); //找到最小的就交换 if(min>i){ arrays[begin]=arrays[begin]+arrays[min]; arrays[min]=arrays[begin]-arrays[min]; arrays[begin]=arrays[begin]-arrays[min]; } begin++; min=begin; } snp(arrays); } public void snp(int[] arrays){ for(int i=0;i<arrays.length;i++){ System.out.print(arrays[i]+" "); } System.out.println(); } public static void main(String[] args) { Select s=new Select(); int[] a={4,5,1,7,6}; s.select_sort(a); } }
找一个博客做自己的女朋友,不管你跟她说什么她都帮你记录,这是多么幸福的一件事啊。如果有女生能做到这点,赶尽娶回家吧!