对于一个具有n个元素序列如果采用快速排序,那么所需的最少比较次数是(),所需的最大比较次数是(),且此序列为()序列。
对序列{45,40,65,43,35,95}利用直接插入排序,写出逐次插入过程(从第一个元素一直到第六个元素)。
对于给定的一组关键字(12,2,16,30,8,28,4,10,20,6,18),按照下列算法进行递增排序,写出每种算法第一趟排序后得到的结果:希尔排序(增量为5)得到__(1)__,快速排序(选第一个记录为基准元素)得到__(2)__,基数(基数为10)排序得到__(3)__,二路归并排序得到__(4)__,堆排序得到__(5)__。空白(3)处应选择()
对于给定的一组关键字(12,2,16,30,8,28,4,10,20,6,18),按照下列算法进行递增排序,写出每种算法第一趟排序后得到的结果:希尔排序(增量为5)得到__(1)__,快速排序(选第一个记录为基准元素)得到__(2)__,基数(基数为10)排序得到__(3)__,二路归并排序得到__(4)__,堆排序得到__(5)__。空白(2)处应选择()
对于给定的一组关键字(12,2,16,30,8,28,4,10,20,6,18),按照下列算法进行递增排序,写出每种算法第一趟排序后得到的结果:希尔排序(增量为5)得到__(1)__,快速排序(选第一个记录为基准元素)得到__(2)__,基数(基数为10)排序得到__(3)__,二路归并排序得到__(4)__,堆排序得到__(5)__。空白(5)处应选择()
对于给定的一组关键字(12,2,16,30,8,28,4,10,20,6,18),按照下列算法进行递增排序,写出每种算法第一趟排序后得到的结果:希尔排序(增量为5)得到__(1)__,快速排序(选第一个记录为基准元素)得到__(2)__,基数(基数为10)排序得到__(3)__,二路归并排序得到__(4)__,堆排序得到__(5)__。空白(4)处应选择()
设有关键码序列(66,13,51,76,81,26,57,69,23),要按关键码值递增的次序排序,若采用快速排序法,并以第一个元素为划分的基准,那么第一趟划分后的结果为( )。
对于给定的一组关键字(12,2,16,30,8,28,4,10,20,6,18),按照下列算法进行递增排序,写出每种算法第一趟排序后得到的结果:希尔排序(增量为5)得到__(1)__,快速排序(选第一个记录为基准元素)得到__(2)__,基数(基数为10)排序得到__(3)__,二路归并排序得到__(4)__,堆排序得到__(5)__。空白(1)处应选择()
快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于等于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了()算法设计策略。
有六个元素6,5,4,3,2,1 的顺序进栈,问下列哪一个不是合法的出栈序列?( )
对序列14, 25, 11, 31, 27, 19进行快速排序,选取最后一个元素作为基准,则第一轮过后结果为:
一个元素序列的排序码为46,79,56,38,40,84),采用快速排序(以位于最左位置的元素为基准,用教材上介绍的一个指针检测)而得到的第一次划分结果为()。
栈s最多能容纳4个元素,现有6个元素按A、B、C、D、E、F的顺序进栈,下列哪个序列不是可能的出栈序列()。
在内部排序中,通常要对被排序数据进行多次扫描。各种排序方法有不同的排序实施过程和时间复杂性。对给定的整数数列 (541,132,984,746,518,181,946,314,205,827)进行从小到大的排序时,采用冒泡排序和简单选择排序时,若先选出大 元素,则第一次扫描结果分别是__(1)__,采用快速排序(以中间元素518为基准)的第一次扫描结果是__(2)__。 设被排序的序列有n个元
如果只想在一个有n个元素的任意序列中得到其中最小的第k(k<<n),个元素之前的部分排序序列,那
如果只想得到一个含有n个元素的序列中第k (k<<n)小元素之前的部分排序序列,最好采用什么排序方法?为什么?如有这样一个序列:{57,11,25,36,18,80.22}得到其第3个最小元索之前的部分序列{11,18,22},使用所选择的算法实现时,要执行多少次比较?
下列内部排序算法中,在初始序列已基本有序(除去n个元素中的某k个元素后即呈有序,k<<n)的情况下,排序效率最高的算法是() A.快速排序 B.直接插入排序 C. 二路归并排序 D. 简单选择排序 E. 起泡排序 F. 堆排序
对以下几个关键字的序列进行快速排序,以第一个元素为基准,一次划分效果不好的是()
对下列四个数列进行快速排序,都以第一个元素为基准元素,进行第一趟排序,则在该次排序过程中移动元素次数最多的序列为()
在内排序的过程中,通常需要对待排序元素序列的排序码做多趟扫描。采用不同的排序方法将产生不同的排序中间结果,设要将集合(tang,deng,an,wan,shi,bai,fang,l)中的排序码按升序排列,则(1)是起泡排序一趟扫描的结果,(2)是初始步长为4的希尔排序一趟扫描的结果。(3)是二路归并排序一趟扫描的结果。(4)是以第一个元素为分界元素的快速排序一趟扫描的结果。(5)是堆排序初始建堆的结果。
对于给定的一组关键宇(12,2,16,30,8,28,4,10,20,6,18),按照下列算法进行递增排序,写出每种算法第一趟排序后得到的结果:希尔排序(增量为5)得到(),快速排序(选第1个记录为基准元素)得到(),二路归并排序得到(),堆排序得到()
在快速排序过程中,需要设立基准元素并划分序列来进行排序。若序列由元素{12,25,30,45,52,67,85}构成,则初始排列为()时,排序效率最高(令序列的第一个元素为基准元素)
快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排数组划分成两个部分,前一部分元素值小于等于基准元素,而后一部分元素值大于等于基准元素。然后再分别对前后两部分进一步进行划分。根据上述描述,快速排序采用了()算法设计策略
为了保证快速排序在最坏情况也有较髙的排序效率,可选待排序序列的第一个元素、最后一个元素和位置位于最中间的一个元奈,在三者之中选择一个其值居中的元素,将其交换到待排序序列的第一个元素位置,再做一趟划分,若设整数数组A有n个元素,设计一个函数,实现上述三者取中并交换到待排序序列第一个元素位置的功能。