首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
有一种简单的排序算法,叫做计数排序(Count sorting)。这种排序算法对一个待排序的表(用数组表示)进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键字互不柜同,计数排序算法针对表中的每个记录,扫描待排序的表一趟,统计表
有一种简单的排序算法,叫做计数排序(Count sorting)。这种排序算法对一个待排序的表(用数组表示)进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键字互不柜同,计数排序算法针对表中的每个记录,扫描待排序的表一趟,统计表
admin
2019-08-01
63
问题
有一种简单的排序算法,叫做计数排序(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
学硕统考专业
相关试题推荐
《共产党宣言》指出:“资产阶级在历史上曾经起过非常革命的作用。”其中包括①“使生产工具,从而使生产关系,从而使社会关系不断地革命化”;②“开拓了世界市场,使一切国家的生产和消费都成为世界性的了”;③“使乡村从属于城市”;④“使未开化的和半开化的国家从属于文
中国共产党在抗日民主根据地实行的土地政策是()。
据史记《商君传》商鞅变法,“为田开阡陌封疆,而赋税平”其目的
西汉的主要赋税形式中,征收对象是儿童的是()。
晚清时期下列武装力量出现的先后顺序是
序列的“中值记录”指的是:如果将此序列排序后,它是第n/2个记录。试写出一个求中值记录的算法。
计算机系统采用补码运算是为了()。
某中央处理器的数据通路如图所示。MDR为内存数据寄存器,PC为程序计数器,IR为指令寄存器。所有的单线箭头为控制微命令。(1)请说明图中部件X的名称和功能、寄存器Y的名称和功能。(2)请解释:为什么要设置T暂存器?(3)假定指
已知二叉树采用二叉链表方式存放,要求返回二叉树T的后序序列中的第一个结点的指针,是否可不用递归且不用栈来完成?请简述原因。
假设计算机系统采用CSCAN(循环扫描)磁盘调度策略,使用2KB的内存空间记录16384个磁盘块的空闲状态。设某单面磁盘旋转速度为6000r/min,每个磁道有100个扇区,相邻磁道间的平均移动时间为1ms。若在某时刻,磁头位于100号磁道处,并沿着磁
随机试题
保留了大量汉乐府民歌的《乐府诗集》编成于()
引起代谢性碱中毒的最常见外科疾病是
(2008年)运算放大器应用电路如图8—70所示,在运算放大器线性工作区,输出电压与输入电压之间的运算关系是()。
编制(),由国务院发展改革部门会同有关省(自治区、直辖市)人民政府提出立项申请,经规划咨询委员会组织论证后,报请国务院批准。
作为保险要素之一的可保风险是()。
劳动合同变更,可以采用口头形式。()
春秋战国后,各朝代为了防御北方游猎民族的入侵都在修筑长城,秦始皇的“万里长城”是()。
(2014·内蒙古)关键期指的是人的某种行为和技能、知识掌握在某个时期发展最快、最容易接受的年龄阶段。()
现代设计的发源地是()。
求11+21+……+101的程序如下:PrivateFunctions(xAsInteger)f=1Fori=1Toxf=f*iNextS=fEndFunctionPrivateSubCommand1Click
最新回复
(
0
)