有一种简单的排序算法,叫做计数排序。这种排序算法对一个待排序的表(用数组表示)进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键字互不相同,计数排序算法针对表中的每个元素,扫描待排序的表一趟,统计表中有多少个元素的关键字比该元素的关键字小。假设对某一个元素,统计出该数值为c,那么这个元素在新的有序表中的合适的存放位置即为c。 (1)设计实现计数排序的算法。 (2)对于有n个元素的表,比较次数是多少? (3)与简单选择排序相比,哪种方法是否更好?为什么?
第1题:
若排序前后关键字相同的两个元素相对位置不变,则称该排序方法是稳定的。下列排序算法中,有(14)种排序算法是稳定的:归并排序、快速排序、希尔排序、堆排序、基数排序、直接插入排序、冒泡排序、直接选择排序。
A.3
B.4
C.5
D.6
第2题:
● 如果待排序序列中两个元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的。 (41) 是稳定的排序方法,因为这种方法在比较相邻元素时,值相同的元素并不进行交换。
(41)
A. 冒泡排序
B. 希尔排序
C. 快速排序
D. 简单选择排序
第3题:
第4题:
对于n个元素构成的线性表,采用简单选择排序共需进行()趟排序。
第5题:
每次直接或通过基准元素间接比较两个元素,若出现逆序排列时就交换它们的位置,此种排序方法叫做()排序;每次使两个相邻的有序表合并成一个有序表的排序方法叫做()排序。
第6题:
排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较(要求比较次数尽量少),然后将其放入已排序序列的正确位置的方法是()
第7题:
排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较(要求比较次数尽量少),然后将其放入已排序序列的正确位置的方法是()
第8题:
如果待排序序列中两个数据元素具有相似的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的,()就是不稳定的排序算法。
第9题:
第10题:
第11题:
冒泡排序
快速排序
简单选择排序
堆排序
第12题:
希尔排序
起泡排序
插入排序
选择排序
第13题:
在每一趟排序过程中,都将待排序序列中最大关键字选出来,并将它从待排序序列中剔除,继续对剩余元素进行同样操作的排序方法,这种排序方法称为( )。
A.基数排序
B.堆排序
C.起泡排序
D.选择排序
第14题:
第15题:
数据表中有10000个元素,如果仅要求求出其中最大的10个元素,则采用()算法最节省时间。
第16题:
如果待排序序列中两个数据元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的,()就是不稳定的排序方法。
第17题:
下列排序算法中,哪种排序方法在一趟结束后不一定能选出一个元素放在其最终位置上。()
第18题:
排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较,然后将其放入已排序序列的正确位置的方法是()
第19题:
对用数组存储的线性表(16,15,32,11,6,30),用快速排序算法进行由小到大排序,若排序下标范围为0~5,选择元素16作为支点,调用一趟快速排序算法后,元素16在数组中的下标位置为()
第20题:
一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完,这种排序算法被称为()。
第21题:
冒泡排序
选择排序
插入排序
快速排序
第22题:
第23题:
希尔排序
起泡排序
插入排序
选择排序
第24题:
快速排序
直接插入排序
二路归并排序
简单选择排序E.起泡排序F.堆排序