java实现冒泡排序和快速排序

冒泡排序(升序)
原理:
1.比较相邻的元素,如果第一个数大于第二个数,则交换位置,数值小的放在前,数值大的放在后。完成一次比较。
2.进行数对比较,每次都是比较两个数,(1,2),(2,3),(3,4)…直至最后一对数比较结束,完成一轮比较。其中1,2,3指数字的位置,比较时用当前位置上的数字比较。
3.下一轮比较时,上一轮中最后一位数不需参与比较。重复1,2直至完成排序。
java代码实现:

public void bobo(int[] a){ for (int i = 0; i < a.length-1; i++) {//需要进行比较的轮数 for (int j = 0; j < a.length-1-i; j++) {//每轮进行比较的次数 if (a[j]

【java实现冒泡排序和快速排序】快速排序(降序)
原理:
1.原数组首末位下标设置位low/lo,high/hi。当lo上的数字小于hi上的数字时,交换位置,同时,低位指针lo右移;否则,高位指针hi左移,当lo>=hi时,结束一轮交换。
2.以lo所指位置分为两段,lo-1,hi+1前一段[low,lo],后一段[hi,high],每段各自进行步骤1。
public void quick(int low,int high,int[] arr){//low:0,high:数组长度-1,arr目标数组 int lo=low,hi=high; //lo 低位指针 high高位指针 if (lo>hi){ return; } boolean flag= false; //控制指针变化 while(lo

    推荐阅读