快速排序算法之JAVA实现
来源:互联网 发布:php微信支付接口教程 编辑:程序博客网 时间:2024/05/16 15:27
欢迎转载,请注明出处:
http://blog.csdn.net/as02446418/article/details/46792615
最近马上要校招了,重新熟悉一下数据结构和一些常用算法还是很有必要的,之后一段时间我准备陆续写一些关于常用算法的java实现。
今天我们来看一下快速排序:
public class QuickSort { public static void quickSort(int n[],int low ,int high){ if (low < high) { int pivot = getMiddle(n,low,high); quickSort(n, low, pivot-1); quickSort(n, pivot+1, high); } } public static int getMiddle(int n[],int low ,int high){ int tmp = n[low]; while(low<high){ //注意这个地方是n[high]>=tmp while(low<high && n[high]>=tmp){ high--; } n[low] = n[high]; //注意这个地方是n[high]<=tmp while (low<high && n[low]<=tmp) { low++; } n[high] = n[low]; } n[low] = tmp; return low; } public static void main(String[] args){ int n[] = {5,465,448,6,1,31,3,43,65,446,64,6,32,5,5,53,3,654,78465,6,0}; quickSort(n, 0 , n.length-1); for (int i = 0; i < n.length; i++) { System.out.println(n[i]+""); } System.out.println(); }}
如代码里写的那个地方,由于之前代码写的有纰漏,那个地方只写了大于或小于,没考虑等于的情况,导致在数组中有重复项时就会出现死循环。。。。。望大家引以为戒
0 0
- Java实现排序算法之快速排序
- 排序算法之快速排序 Java实现
- 排序算法之快速排序java实现
- 算法之快速排序----------用Java实现
- 快速排序算法之JAVA实现
- 算法学习之java实现快速排序
- Java实现算法之快速排序
- 算法实现Java之快速排序
- Java算法实现之快速排序
- 排序算法之快速排序、归并排序(java实现)
- 用JAVA实现排序算法之四:快速排序
- Java实现-高效排序算法之快速排序
- 排序算法之快速排序的思想以及Java实现
- 排序算法之——快速排序(Java实现)
- 排序算法之——快速排序(Java实现)
- 排序算法之快速排序法(Java实现)
- 排序算法入门之快速排序(java实现)
- 算法代码实现之快速排序,Java实现
- Java 数组
- mysql 把一个表中数据更新到另一个表
- Netty源码解读之线程
- 猜猜看
- c#程序设计 猜猜看
- 快速排序算法之JAVA实现
- 众数问题
- 怎么查看linux服务器有cpu
- 没要彩礼婆婆骂我是便宜货
- NVR信号流程图
- PayPal高级工程总监:读完这100篇论文 就能成大数据高手
- NYOJ 22 素数求和问题
- Netty源码解读(四)Netty与Reactor模式
- android实习期日常笔记(四)