排序算法
来源:互联网 发布:网络社会组织 编辑:程序博客网 时间:2024/05/19 11:48
一.冒泡排序
代码实现
public static void bubbleSort(int[] arr) { for (int i = 0; i < arr.length - 1; i++) { boolean flag = true;//设定一个标记,若为true,则表示此次循环没有进行交换,也就是待排序列已经有序,排序已然完成。 for (int j = 0; j < arr.length - 1 - i; j++) { if (arr[j] > arr[j + 1]) { swap(arr,j,j+1); flag = false; } } if (flag) { break; } } }二.快速排序(冒泡排序的一种改进)
图解:
代码实现:
public static void quickSort(int[] array,int left, int right){int i,j,t,temp;if(left>right)return;i=left;j=right;temp=array[left];while(i!=j){ while(array[j]>=temp && i<j)//从右向左找,直到找到小于基准值为止j--; while(array[i]<=temp && i<j)//从左向右找,直到找到大于基准值为止i++; if(i<j){//互换找到值的为止,让小的在大的值左边 t=array[i];array[i]=array[j];array[j]=t;systemOut(array);//打印数组 }
参考文章:快速排序
阅读全文
0 0
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- 排序算法
- Python数据分析基础(三)——pandas
- codeforces544E
- 一次无锁循环队列的编写回顾
- 【mysql】查询性能优化
- 补补嵌入式系统基础知识
- 排序算法
- jass 重置英雄
- Python数据分析基础(四)——数据文件处理
- 你要知道的游戏开发新手入门指南
- springmvc 整合 swagger2
- Generate Parentheses
- 端口分类调研
- java的BIO实现
- Python数据分析基础(五)——数据规整