实验2——快速排序简单实现
来源:互联网 发布:风撑规格算法 编辑:程序博客网 时间:2024/06/04 17:44
给定一个数组,对这个数组进行快速排序。
package IText;public class QuickSort {public static void main(String[] args){int[] a = {49,38,65,97,76,13,27};quickSort(a,0,a.length-1);for(int x:a)System.out.print(x+" ");}public static void quickSort(int[] arr,int start,int end){int i = start;int j = end ;if((arr==null)||(arr.length==0)) System.out.println("数组为空");while(i<j){while(i<j&&arr[i]<=arr[j]){ //从后往前走,找比arr[0](key的初始值)小的第一个数j--;}//找到这个数后交换int temp = arr[i];arr[i] = arr[j];arr[j] = temp;while(i<j&&arr[i]<arr[j]){ //从前往后走,找比key大的第一个数i++;}//找到后两数交换temp = arr[i];arr[i] = arr[j];arr[j] = temp;}//对key分割出来的左右两个子数组继续快速排序。if(i-start>1)quickSort(arr,start,i-1);if(end-i>1)quickSort(arr,i+1,end);}}
算法的时间复杂度为 O(nlogn)
0 0
- 实验2——快速排序简单实现
- 简单排序算法实现——快速排序
- 快速排序简单实现
- 快速排序简单实现
- 快速排序简单实现
- 快速排序简单实现
- 快速排序的简单实现
- 快速排序的简单实现
- 快速排序的简单实现
- 快速排序的简单实现
- Java简单实现快速排序
- 快速排序—java实现
- (数据结构排序的实验四)快速,冒泡,简单选择,直接插入排序的c语言实现!!
- java实现简单排序算法:快速排序
- 简单算法———快速排序
- 简单算法——快速排序
- 快速简单理解——希尔排序
- 快速排序的一种简单实现
- 每日一个知识点8 2014/6/11
- 《Linux驱动基础篇》- Linux的中断系统
- 用DEF文件从DLL中导出C++类
- 在 Linux 平台中调试 C/C++ 内存泄漏方法
- 《Linux驱动基础篇》- 1.LED灯驱动入门
- 实验2——快速排序简单实现
- Storm之trident聚合操作介绍
- Unity3D占用内存太大的解决方法
- java.nio.BufferOverflowException
- 使用Eclipse和ADT插件管理Android项目(Managing Project from Eclipse with ADT)
- 分布式Web服务器架构
- 如何使用SecureCRT连接vmware下ubuntu
- 杂谈前端技术人员如何做漂亮的网页
- SVN解锁操作