首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
有一种简单的排序算法,叫做计数排序(Count sorting)。这种排序算法对一个待排序的表(用数组表示)进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键字互不相同,计数排序算法针对表中的每个记录,扫描待排序的表一趟,统计表
有一种简单的排序算法,叫做计数排序(Count sorting)。这种排序算法对一个待排序的表(用数组表示)进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键字互不相同,计数排序算法针对表中的每个记录,扫描待排序的表一趟,统计表
admin
2019-08-01
97
问题
有一种简单的排序算法,叫做计数排序(Count sorting)。这种排序算法对一个待排序的表(用数组表示)进行排序,并将排序结果存放到另一个新的表中。必须注意的是,表中所有待排序的关键字互不相同,计数排序算法针对表中的每个记录,扫描待排序的表一趟,统计表中有多少个记录的关键字比该记录的关键字小。假设针对某一个记录,统计出的计数值为c,那么,这个记录在新的有序表中的合适的存放位置即为c。
设计实现计数排序的算法。对于有n个记录的表,关键字的比较次数是多少?与简单选择排序相比较,这种方法是否更好?为什么?
选项
答案
typedef struct{ int key: datatype info }RecType; void CountSort(RecT),pe 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://www.kaotiyun.com/show/9ACi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
记载了用竿标日测影以求日高的方法,并认识了勾股定理的算书是()。
晋察冀抗日根据地
赋税是我国古代国家宏观管理经济的重要手段。 据此回答问题:乾隆年间的税种有()
乾隆时期,明确规定了驻藏大臣的地位与达赖班禅同等,并实行“金瓶掣签”制度的文件是()。
简述雅典民主政治的形成过程。
论述秦国商鞅变法的内容、过程以及重要意义。
甲骨文的发现是19世纪20世纪之交中国考古学最重要的发现之一,为重新认识三代的历史与文化奠定了基础,开辟了坦途,可称之为中国文化史的里程碑。根据所学知识回答问题:在甲骨文的研究流域,对甲骨文研究作出了重大贡献,被后人称为“甲骨四堂”的四位学者是(
三个进程P1、P2、P3互斥使用一个包含N(N>O)个单元的缓冲区。P1每次用produce()生成一个正整数并用put()送入缓冲区某一空单元中;P2每次用getodd()从该缓冲区中取出一个奇数并用countodd()统计奇数个数;P3每次用getev
在独立编址方式下,存储设备和I/O设备是()来区分的。
CSMA/CA是如何实现“冲突避免”的?
随机试题
A.输血管理信息系统的安全性B.输血管理信息系统的高效性C.输血管理信息系统的实用性D.输血管理信息系统的标准化E.输血管理信息系统的先进性采供血的管理和业务工作服务必须能够满足各部门多种情况的需要,既要满足现在工作的需要,又要满足以后发展的需
A.咖啡因B.长春碱C.喜树碱D.蛇根碱E.毒芹碱具有升华性的生物碱是()
药品的包装须按规定印有或贴有
关于地方政府机构设置和编制管理,下列哪一说法是正确的?
某逻辑电路如图7—62所示,若输入A=1,B=0,则输出F1和F2分别为()。
依据《环境影响评价公众参与暂行办法》的规定,为了加强公众参与环境影响评价活动,在环境影响评价报告书中,应当()。
当出现经济萧条时,政府可采用()的财政政策。
履约担保是指发包人在招标文件中规定的要求承包人提交的保证履行合同义务的担保。它的形式一般不包括()。
女子甲因不满月嫂乙的表现,在网站上发了一篇题为《说说我家黑心月嫂》的帖子,不仅公布了乙的真实姓名和电话,还列举了五大“罪状”,其中包括给孩子吃安眠药、护理技术差、偷钱、偷吃东西、挑拨家里人关系等。乙将甲告上法庭。乙能证明是甲发帖和帖子内容。但不能证明在甲家
天气很热,他要坚持体育锻炼。
最新回复
(
0
)