爱问知识人 爱问教育 医院库

选择排序的递归算法

首页

选择排序的递归算法


        

提交回答
好评回答
  • 2005-11-16 16:11:49
      归并排序  
    可以运用分而治之方法来解决排序问题,该问题是将n 个元素排成非递减顺序。分而治之方法通常用以下的步骤来进行排序算法:若n 为1,算法终止;否则,将这一元素集合分割成两个或更多个子集合,对每一个子集合分别排序,然后将排好序的子集合归并为一个集合。
       假设仅将n 个元素的集合分成两个子集合。现在需要确定如何进行子集合的划分。一种可能性就是把前面n- 1个元素放到第一个子集中(称为A),最后一个元素放到第二个子集里(称为B)。按照这种方式对A递归地进行排序。由于B仅含一个元素,所以它已经排序完毕,在A排完序后,只需要用程序2 - 1 0中的函数i n s e r t将A和B合并起来。
      把这种排序算法与I n s e r t i o n S o r t(见程序2 - 1 5)进行比较,可以发现这种排序算法实际上就是插入排序的递归算法。该算法的复杂性为O (n 2 )。把n 个元素划分成两个子集合的另一种方法是将含有最大值的元素放入B,剩下的放入A中。
      然后A被递归排序。为了合并排序后的A和B,只需要将B添加到A中即可。假如用函数M a x(见程序1 - 3 1)来找出最大元素,这种排序算法实际上就是S e l e c t i o n S o r t(见程序2 - 7)的递归算法。 假如用冒泡过程(见程序2 - 8)来寻找最大元素并把它移到最右边的位置,这种排序算法就是B u b b l e S o r t(见程序2 - 9)的递归算法。
      这两种递归排序算法的复杂性均为(n2 )。若一旦发现A已经被排好序就终止对A进行递归分割,则算法的复杂性为O(n2 )(见例2 - 1 6和2 - 1 7)。 上述分割方案将n 个元素分成两个极不平衡的集合A和B。A有n- 1个元素,而B仅含一个元素。
      下面来看一看采用平衡分割法会发生什么情况: A集合中含有n/k 个元素,B中包含其余的元素。递归地使用分而治之方法对A和B进行排序。然后采用一个被称之为归并( m e rg e)的过程,将已排好序的A和B合并成一个集合。 例2-5 考虑8个元素,值分别为[ 1 0,4,6,3,8,2,5,7 ]。
      如果选定k = 2,则[ 1 0 , 4 , 6 , 3 ]和[ 8 , 2 , 5 , 7 ]将被分别独立地排序。结果分别为[ 3 , 4 , 6 , 1 0 ]和[ 2 , 5 , 7 , 8 ]。从两个序列的头部开始归并这两个已排序的序列。
      
      元素2比3更小,被移到结果序列;3与5进行比较,3被移入结果序列;4与5比较,4被放入结果序列;5和6比较,。。如果选择k= 4,则序列[ 1 0 , 4 ]和[ 6 , 3 , 8 , 2 , 5 , 7 ]将被排序。排序结果分别为[ 4 , 1 0 ]和[ 2 , 3 , 5 , 6&n。

    1***

    2005-11-16 16:11:49

类似问题

换一换

相关推荐

  • 笔记本电脑永远是解决笔记本故障的卡片屏幕...

    有时,我们的笔记本电脑总是卡住了。我们怎样才能解决这个问题可能有很多不太熟悉的网友。现在让我们告诉你...

    电脑/网络

  • xp电脑显示屏调节屏幕亮度怎么调节_XP...

    XP电脑显示屏亮度调节怎么操作 1、直接在XP系统桌面空白处右键选择属性打开【显示属性】程序。 2、...

    电脑/网络

  • 计算机不能重新启动所有时间重新启动如何解...

    关于计算机不能重启和重启的问题,我相信很多网民以前见过。我们如何解决这个问题这里有一点告诉你,计算机...

    电脑/网络

  • 如果笔记本不能上网,我该怎么办

    也许有些网友对笔记本电脑无法上网的问题了解不多。现在让我们向你介绍一下笔记本电脑不能上网的原因以及如...

    电脑/网络

  • 现在移民需要多少钱(留学移民要多少钱)

    在众多的热门移民国家中,能够同时满足速度快,要求简单且有法案支持的移民国家,目前就只有马耳他,希腊,...

    电脑/网络

  • 高迪安集团公司的实力怎么样?

    高迪安(英文:GOLDIAN,前身:金大元集团),是一个综合性企业集团,致力于真爱人文事业的发展,旗...

    管理学

  • 有人了解高迪安集团这个公司吗?

    高迪安(英文:GOLDIAN,前身:金大元集团),是一个综合性企业集团,成立以来致力于真爱人文事业的...

    产业信息

  • 高迪安集团旗下的人工智能产业发展好吗?

    高迪安集团旗下的元梦智能科技公司,是一家致力于打造以数字智能人为核心的人工智能交互系统,并集研发、生...

    产业信息

  • 高迪安这个公司现在旗下现在主要有哪些产业...

    高迪安旗下产业比较多,涵盖地产、教育、珠宝、智能、金融、互联、健康等多个领域。集团从地产起步,开发了...

    产业信息

  • 高迪安之前开发的第一个新房是哪个楼盘?

    位于浦东川沙的金钟苑,后续集团开发了享誉海内外的上海地标性楼盘——香梅花园。

    购房置业

  • 选择排序的做是什么?

    为了便于理解,设有10个数分别存在数组元素a~a中

    数学

  • 排序的选择排序稳定吗?

    选择排序是不稳定的排序方法(很多教科书都说选择排序是不稳定的,但是,完全可以将其实现成稳定的排序方法...

    互联网

  • 选择排序的递归算法

    归并排序 可以运用分而治之方法来解决排序问题,该问题是将n 个元素排成非递减顺序。分而治之方法通常用...

    程序设计

  • 选择排序是指什么呢?

    选择排序(Selectionsort)是一种简单直观的排序算法

    办公软件

  • 什么是选择排序(Selection so...

    中文名选择排序外文名Selectionsort性质不稳定的排序方法代表PERL选择排序算法适用范围数...

    办公软件

  • 基本选择排序是什么?

    算法每次在被排序数组中任意选择一个元素作为关键数据,首先仅考虑这个元素的第一个key(字母),然后把...

    程序设计

  • 选择排序法是怎么样的

    如定位a,先假定a中当前值是最大数,a与后面的元素一一比较,如果a更大,则将a、a交换,a已更新再与...

    数学

  • 怎样为简单选择排序

    以下为简单选择排序的存储状态,其中大括号内为无序区,大括号外为有序序列:初始序列:{49276597...

    上网帮助

  • 选择排序具体指的是什么?

    br/*1:从a-a中选出最小的数据,然后与a交换位置br/*2:从a-a中选出最小的数据,然后与a...

    数学

  • 选择排序的过程是怎样的?

    选择排序思想n个记录的文件的直接选择排序可经过n1趟直接选择排序得到有序结果:①初始状态:无序区为R...

    手机使用

正在加载...
最新问答 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):