首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
有一种简单的排序算法,叫做计数排序(Count sorting)。这种排序算法对一个待排序的表(用数组表示)进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键字互不柜同,计数排序算法针对表中的每个记录,扫描待排序的表一趟,统计表
有一种简单的排序算法,叫做计数排序(Count sorting)。这种排序算法对一个待排序的表(用数组表示)进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键字互不柜同,计数排序算法针对表中的每个记录,扫描待排序的表一趟,统计表
admin
2019-08-01
72
问题
有一种简单的排序算法,叫做计数排序(Count sorting)。这种排序算法对一个待排序的表(用数组表示)进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键字互不柜同,计数排序算法针对表中的每个记录,扫描待排序的表一趟,统计表中有多少个记录的关键字比该记录的关键字小。假设针对某一个记录,统计出的计数值为c,那么,这个记录在新的有序表中的合适的存放位置即为c。
设计实现计数排序的算法。对于有n个记录的表,关键字的比较次数是多少?与简单选择排序相比较,这种方法是否更好?为什么?
选项
答案
typedef struct{ int key: datatype info }flecType; void countSort(RecType a[],b[],int n){ //计数排序算法,将a中记录排序放入b中 int i,j,cnt; for(i=0;i
2次。 简单选择排序算法比本算法好。简单选择排序的比较次数是n(n一1)/2,且只用一个交换记录的空间;而这种方法的比较次数是n
2
,且需要另一数组空间。 提示:此题考查的知识点是计数排序思想。因题目要求“针对表中的每个记录,扫描待排序的表一趟”,所以比较次数是n
2
次。若限制“对任意两个记录之间应该只进行一次比较”,则可把以上算法中的比较语句改为: for(i=0;i
解析
转载请注明原文地址:https://kaotiyun.com/show/ojCi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
论述公元前6世纪至公元1世纪佛教的形成与传播。
1543年发表解剖学专著《人体结构论》的是()。
列宁在()报告中论证了在俄国实现和平过渡的可能性和必要性。
1956年,苏共二十大后,匈牙利大党员和群众强烈要求克服个人崇拜,扩大民主,实行经济改革,一些由知识分子、大学生和干部组成的社团组织纷纷成立,其中最有影响者是()。
概述第二帝国时期法国经济发展的特点。
最早以立法的形式巩固大化改新成果的法令是()。
洋务运动期间,军事企业主要采取的组织形式是()。
编写判定给定的二叉树是否是二叉排序树的函数。
在集中式总线仲裁中,()方式响应时间最快。
在一个双链表中,在*p结点之前插入*q结点的操作是()。
随机试题
制造扬声器磁钢的材料应选()。
参加1928年革命文学论争的各方有()
(2010年4月)设想没有运动的物质的观点是_______。
治疗I型急进性肾炎最适当的疗法有
观察小儿指纹形色变化不能诊察
最长诉讼时效的起算时点是()。
下列关于银行存款函证的说法中,不正确的是()。
公安民警的法律素质的具体表现不包括()。
论述新中国成立以来我国学校教育制度的变革及对我国当前学制改革有哪些重要启示。
Thecrippledboyproudlywalkedwitha______totheplatformtojointheactors.
最新回复
(
0
)