您好,欢迎光临本网站![请登录][注册会员]  

搜索资源列表

  1. 快速排序的非递归实现

  2. 利用栈来消除递归 模拟快速排序的过程 实现非递归的快速排序
  3. 所属分类:C/C++

    • 发布日期:2009-06-08
    • 文件大小:10240
    • 提供者:weixiaoguoke
  1. 快速排序算法相关分析

  2. 1)不做随机化处理的递归实现; 2)采用随机化处理的递归实现; 3)用while循环消除尾递归; 4)用栈模拟递归,并证明所需的栈空间为O(logn); 5) 够小时改用插入排序
  3. 所属分类:其它

    • 发布日期:2009-07-13
    • 文件大小:61440
    • 提供者:zclmoon
  1. 快速排序,C语言实现

  2. /* * --快速排序-- * 快速排序的实现基于分治法,具体分为三个步骤。假设待排序的序列为L[m..n]。 * 分解:序列L[m .. n]被划分成两个可能为空的子序列L[m .. pivot-1]和L[pivot+1 .. n], * 使L[m .. pivot-1]的每个元素均小于或等于L[pivot],同时L[pivot+1.. n]的每个元素均大于L[pivot]。 * 其中L[pivot]称为这一趟分割中的主元(也称为枢轴、支点)。 * 解决:通过递归调用快速排序,对子序列L[m
  3. 所属分类:C

    • 发布日期:2009-08-25
    • 文件大小:2048
    • 提供者:wangruitp
  1. C#快速排序算法实现

  2. 递归求解(Conquer):通过递归对p..aq和aq+1..ar进行排序。 合并(Merge):由于对分解出的两个子序列的排序是就地进行的,所以在ap..aq和aq+1..ar都排好序后不需要执行任何计算ap..ar就已排好序。 这个解决流程是符合分治法的基本步骤的。因此,快速排序法是分治法的经典应用实例之一。
  3. 所属分类:C#

    • 发布日期:2009-09-06
    • 文件大小:3072
    • 提供者:lu19870123
  1. 在双向链表上实现快速排序的递归算法

  2. 在双向链表上实现快速排序的递归算法 输入的形式:元素个数、元素都为整型。 输入值范围:元素个数为非负正整数,需要排序的元素都为整型。 输出的形式:排序前的元素序列和排序后的元素序列。 程序的功能:对用户输入的n个整数元素进行排序。
  3. 所属分类:其它

    • 发布日期:2009-09-30
    • 文件大小:2048
    • 提供者:songsiqi2006
  1. 数据结构 Vc实现 快速排序

  2. 快速排序(Quicksort)是对冒泡排序的一种改进。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。
  3. 所属分类:C++

    • 发布日期:2009-10-22
    • 文件大小:2048
    • 提供者:yangyang49
  1. 递归方法实现快速排序

  2. 使用递归的方法实现快速排序,简洁明了,避免了烦琐的考虑循环。
  3. 所属分类:C/C++

    • 发布日期:2009-12-10
    • 文件大小:551
    • 提供者:znchb
  1. JAVA快速排序(递归实现与非递归堆栈模拟实现)

  2. 两种方法: 传统的递归快速排序 采用非递归堆栈模拟
  3. 所属分类:Java

    • 发布日期:2010-12-27
    • 文件大小:4096
    • 提供者:maolei677
  1. 冒泡 快速排序 选择排序 二分法 插入 快速选择

  2. 冒泡排序 快速排序 选择排序 二分法排序 插入排序 快速选择排序 递归冒泡排序
  3. 所属分类:C/C++

    • 发布日期:2011-02-25
    • 文件大小:3072
    • 提供者:csbmary
  1. 非递归和递归快速排序算法

  2. 本文档主要用C#实现了三个基本排序,选择排序,冒泡排序和插入排序,另外还有快速排序的递归和非递归实现方式
  3. 所属分类:C#

    • 发布日期:2011-11-01
    • 文件大小:64512
    • 提供者:shaosks123
  1. 快速排序的递归简洁实现

  2. 可以用递归快速实现排序算法,简洁高效,算法复杂度比较合理
  3. 所属分类:C++

    • 发布日期:2011-12-08
    • 文件大小:604
    • 提供者:yqdhotmail
  1. 非递归快速排序

  2. 用栈实现的快速排序,避免了原来的递归算法
  3. 所属分类:C

  1. 快速排序算法

  2. 快速排序的原理基于分治法,在进行排序时首先对待排序的序列进行分解,然后递归调用快速排序,最后合并
  3. 所属分类:C/C++

    • 发布日期:2014-04-08
    • 文件大小:1048576
    • 提供者:yidonglou123
  1. 快速排序算法

  2. 递归方法实现快速排序int Partion(int R[],int l,int h)//返回划分后基准记录的位置,对R[l]到R[h]做划分 { int i,j; int temp; i=l;j=h;temp=R[i]; do { while((R[j]>=temp)&&(i<j)) j--; if(i<j) R[i++]=R[j]; while((R[i]<=temp)&&(i<j)) i++; if(i<j) R[j--]=R[i]; }while(i!
  3. 所属分类:C/C++

    • 发布日期:2014-08-02
    • 文件大小:831
    • 提供者:u013510824
  1. php快速排序

  2. php递归与非递归快速排序写法php递归与非递归快速排序写法php递归与非递归快速排序写法php递归与非递归快速排序写法
  3. 所属分类:PHP

    • 发布日期:2018-01-17
    • 文件大小:3072
    • 提供者:bhllii
  1. c++快速排序详解

  2. 快速排序总体思想:先找到一个枢轴,让他作为分水岭。通过一趟排序将待排序的记录分割成独立的两部分,前面一部分都比枢轴小,后面一部分逗比枢轴大,然后又分别对这两部分记录继续进行递归的排序,达到整个序列有序的目的。
  3. 所属分类:其它

    • 发布日期:2020-08-30
    • 文件大小:48128
    • 提供者:weixin_38577378
  1. 递归实现快速排序

  2. 这是本人第一次写博客,嗯…目的就是想记录一下自己的学习过程。以前学习数据结构的时候写快排用的循环都是双重for循环,今天偶尔看到了运用递归来实现快速排序,所以突发想记录一下。由于我以前学过c和java,现在在自学python,所以一下代码均为python。但基本思想是一样的。 1.递归思想 假设我们用递归来实现n!。 def digui(n): if n>1: return n*digui(n-1) else: re
  3. 所属分类:其它

    • 发布日期:2020-12-21
    • 文件大小:54272
    • 提供者:weixin_38537777
  1. Go语言展现快速排序算法全过程的思路及代码示例

  2. 快速排序算法 快速排序是一个递归的思想,首先选择一个数作为基数,把数组中小于它的数放在它的左边,把大于它的数放在它的右边,然后对左右两边的数递归进行排序。 算法的关键部分是实现数组的划分,即怎么把数组的元素划分成两部分,使得左边的数比基数小,右边的数比基数大。划分有许多不同的实现方法,这里主要使用单向扫描的方法,后面再稍微介绍双向扫描的方法。 选择最右边的数字作为基数。使用一个变量j记录当前左边数字(比基数小的数)的最右的下标值。然后使用变量i从左到右遍历数组,如果a[i]比基数小,说明a[i]
  3. 所属分类:其它

    • 发布日期:2020-12-31
    • 文件大小:54272
    • 提供者:weixin_38577378
  1. quickSort-mergeSort-heapSort-radixSort:非递归归快速排序归并排序堆排序基数排序的实现-源码

  2. quickSort-mergeSort-heapSort-radixSort 非递归快速排序归并排序堆排序基数排序的实现 //快速排序 function quickSort ( arr ) { var parts = [ [ 0 , arr . length - 1 ] ] ; while ( parts . length ) { var part = parts . shift ( ) ; var l = part [ 0 ] ;
  3. 所属分类:其它

    • 发布日期:2021-02-12
    • 文件大小:2048
    • 提供者:weixin_42153801
  1. 深入单链表的快速排序详解

  2. 单链表的快排序和数组的快排序基本思想相同,同样是基于划分,但是又有很大的不同:单链表不支持基于下标的访问。故书中把待排序的链表拆分为2个子链表。为了简单起见,选择链表的第一个节点作为基准,然后进行比较,比基准小得节点放入左面的子链表,比基准大的放入右边的子链表。在对待排序链表扫描一遍之后,左边子链表的节点值都小于基准的值,右边子链表的值都大于基准的值,然后把基准插入到链表中,并作为连接两个子链表的桥梁。然后分别对左、右两个子链表进行递归快速排序,以提高性能。但是,由于单链表不能像数组那样随机存储
  3. 所属分类:其它

    • 发布日期:2021-01-20
    • 文件大小:96256
    • 提供者:weixin_38608866
« 12 3 4 5 6 7 8 9 10 ... 31 »