`

快速排序算法

    博客分类:
  • java
阅读更多
   1. public class QSort {      
   2.          
   3.     /**    
   4.      *  
   5.      * @param pData 需要排序的数组    
   6.      * @param left     左边的位置,初始值为0    
   7.      * @param right 右边的位置,初始值为数组长度    
   8.      */      
   9.     public static void QuickSort(int[] pData,int left,int right)      
  10.     {       
  11.       int i,j;      
  12.       int middle,temp;      
  13.       i = left;      
  14.       j = right;      
  15.       middle = pData[left];      
  16.       while(true)      
  17.       {      
  18.           while((++i)<right-1 && pData[i]<middle);      
  19.           while((--j)>left && pData[j]>middle);      
  20.           if(i>=j)      
  21.               break;      
  22.           temp = pData[i];      
  23.           pData[i] = pData[j];      
  24.           pData[j] = temp;      
  25.       }      
  26.        
  27.       pData[left] = pData[j];      
  28.       pData[j] = middle;      
  29.            
  30.       if(left<j)       
  31.         QuickSort(pData,left,j);      
  32.        
  33.        
  34.       if(right>i)       
  35.         QuickSort(pData,i,right);      
  36.     }      
  37.        
  38.     public static void main(String[] args){      
  39.         int[] pData = new int[10];      
  40.         for(int i = 0; i< 10; i++)      
  41.             pData[i] = (int)(Math.random()*100);      
  42.              
  43.         for(int i = 0; i<pData.length; i++)      
  44.             System.out.print(pData[i]+" ");      
  45.              
  46.         QSort.QuickSort(pData, 0, pData.length);      
  47.              
  48.         System.out.println("\n***********************");      
  49.              
  50.         for(int i = 0; i<pData.length; i++)      
  51.             System.out.print(pData[i]+" ");      
  52.     }      
  53.        
  54. }    
分享到:
评论

相关推荐

    快速排序算法相关分析

    快速排序算法相关分析 快速排序算法是一种有效的排序算法,虽然算法在最坏的情况下运行时间为 O(n^2),但由于平均运行时间为 O(nlogn),并且在内存使用、程序实现复杂性上表现优秀,尤其是对快速排序算法进行随机化...

    FPGA并行快速排序算法-位宽可设

    在本文中,我们将深入探讨基于FPGA的并行快速排序算法,特别关注“位宽可设”的特性。这种算法能够高效地处理大量数据,并且在硬件实现上具有很高的灵活性。我们将从以下几个方面来阐述这个主题: 一、快速排序算法...

    快速排序算法以及归并算法

    ### 快速排序算法 快速排序是一种高效的排序算法,采用分而治之的策略,其核心思想是选择一个基准元素,通过一趟排序将待排序的数据分割成独立的两部分,其中一部分的所有数据都比另一部分的所有数据都要小,然后再...

    快速排序算法matlab

    ### 快速排序算法在MATLAB中的应用与理解 #### 一、快速排序算法简介 快速排序是一种非常高效的排序算法,由英国计算机科学家托尼·霍尔(Tony Hoare)于1960年提出。它采用分治策略来把一个序列分为较小的两个子...

    C语言实现快速排序算法

    快速排序算法,C语言 快速排序(Quicksort)是对冒泡排序的一种改进。由C. A. R. Hoare在1962年提出。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有...

    c语言 数据结构 快速排序算法

    c语言版本的数据结构的快速排序算法,适用于新手学习

    快速排序算法实现

    快速排序算法C语言实现,快排序算法QuickSort.cpp

    快速排序算法实现 c#代码

    ### 快速排序算法在C#中的实现 #### 一、快速排序算法简介 快速排序是一种高效的排序算法,由英国计算机科学家托尼·霍尔(Tony Hoare)于1960年提出。该算法采用分治策略来把一个序列分为较小的两个子序列,再对这...

    演示快速排序算法(12KB)

    - **README.TXT**:这是一个文本文件,通常用于提供关于软件或代码的简短说明,可能包含快速排序算法的使用方法、注意事项或其他相关信息。 - **QUIKSORT.VBP**:这是Visual Basic Project文件,保存了整个项目的...

    快速排序算法java代码

    "快速排序算法java代码" 快速排序算法是由Tony Hoare在1960年提出的一种排序算法,它的平均时间复杂度为O(n log n),是目前最快的排序算法之一。下面我们将详细地讲解快速排序算法的java代码实现。 快速排序算法的...

    严蔚敏快速排序算法的伪代码。。。。。

    根据提供的标题、描述、标签及部分内容,我们可以梳理出与快速排序算法相关的关键知识点。 ### 快速排序算法概述 快速排序是一种高效的排序算法,在实际应用中,它的平均性能通常优于其他时间复杂度为 \(O(n\log n...

    分别使用Java和Python实现快速排序算法.zip

    快速排序:分别使用Java和Python实现快速排序算法.zip 快速排序:分别使用Java和Python实现快速排序算法.zip 快速排序:分别使用Java和Python实现快速排序算法.zip 快速排序:分别使用Java和Python实现快速排序算法....

    C++快速排序算法程序

    C++快速排序算法程序,用于处理大量数据, 并对这些数据进行快速的排序

    改进的快速排序算法

    快速排序算法的改进思路 1.选取好的基准,是两边的数据个数尽量的均匀 取数组的第一个,中间,最后一个数据,取三个数中第二大的数作为基准 2. 不递归 3.与插入结合,当段内的数组个数小于等于16的时候,使用...

    快速排序算法 C语言实现

    快速排序算法 C语言实现 快速排序算法是一种高效的排序算法,通过递归的方式将记录分区排序。下面将详细介绍快速排序算法的实现细节。 首先,我们需要了解快速排序算法的基本思想。快速排序算法的核心思想是选择一...

    Java实现快速排序算法+编程知识+技术开发

    Java实现快速排序算法+编程知识+技术开发; Java实现快速排序算法+编程知识+技术开发; Java实现快速排序算法+编程知识+技术开发; Java实现快速排序算法+编程知识+技术开发; Java实现快速排序算法+编程知识+技术...

    快速排序算法和冒泡排序效率对比

    快速排序和冒泡排序是两种常见的排序算法,它们在计算机科学中扮演着重要的角色,特别是在数据处理和优化程序性能方面。本篇文章将深入探讨这两种排序算法的原理、效率以及它们在C#编程语言中的实现。 首先,让我们...

    matlab 实现快速排序算法_一共有主程序,分类,插入和选择四个程序

    资源名:matlab 实现快速排序算法_一共有主程序,分类,插入和选择四个程序 资源类型:matlab项目全套源码 源码说明: 全部项目源码都是经过测试校正后百分百成功运行的,如果您下载后不能运行可联系我进行指导或者...

    超快速排序算法,性能优于快速排序算法和基数排序算法

    ### 超快速排序算法详解 #### 一、引言 在计算机科学中,排序算法是一种重要的基础算法,被广泛应用于各种系统软件和应用软件之中。传统的排序算法如快速排序和基数排序各有优缺点:快速排序算法因其简洁的结构和...

Global site tag (gtag.js) - Google Analytics