早教吧 育儿知识 作业答案 考试题库 百科 知识分享

排序算法折半插入排序and​简单选择排序()折半插入排序:为什么比较次数最少与最多同,都是n*log2n,最多时间复杂度为O(n2)?简单选择排序:为什么比较次数均是n(n-1)/2;移动次数最少

题目详情
排序算法 折半插入排序and​简单选择排序()
折半插入排序:为什么 比较次数 最少与最多同,都是n*log2n,最多时间复杂度为O(n2)?
简单选择排序:为什么 比较次数均是n(n-1)/2; 移动次数最少为0,最多为3(n-1)?
▼优质解答
答案和解析
折半插入排序:我对这些名称比较模糊,但如果没有猜错,应该是快速排序算法这样子的算法,或者更准确点,有一个排序算法叫做归并排序算法.因为每次都取半,而且要处理所有元素,所以理论时间时间效率是O(nlogn).但是这一类算法在一定情况下会退化成O(n^2),根据算法原理,逆向思维构造数据,是可以让算法卡出翔的.所以延伸出了随机快速排序算法这一类算法.
简单选择排序:这个算法比较简单,一共有n个元素,每个元素俩俩之间比较,肯定需要O(n^2)的时间复杂度.至于移动次数,跟算法中的比较函数有关系.当且仅当两个元素为逆序对的时候才尽享移动,所以移动次数最少可以为0,即序列在一开始就为有序.最多为3(n-1)次,因为移动元素需要n-1次,而每次做出移动需要一个辅助空间,即t = a,a = b,b = t,这就是常数3的由来.
本人大学生ACMer,看到这个问题就手打了一下,我以上所有回答都需要斟酌,不排除有出错的地方.恳请发现错误的网友帮忙斧正,@海胖博客
看了 排序算法折半插入排序and​...的网友还看了以下:

实验小学要组织同学参加“雏赢”杯作文比赛,其中女同学比男同学多10人,评选结果是男同学15人获奖,  2020-05-13 …

实验小学要组织同学参加“雏赢”杯作文比赛,其中女同学比男同学多10人,评选结果是男同学15人获奖,  2020-07-05 …

实验小学要组织同学参加“雏赢”杯作文比赛,其中女同学比男同学多10人,评选结果是男同学15人获奖,  2020-07-05 …

我国选举法规定,各级人民代表大会的代表候选人的当选条件是()A.获得选区全体选民的过半数选票B.获  2020-07-12 …

汉译英在线翻译器从2个中文译本来看,王佐良的译文在语言风格上颇与原文契合,与莎士比亚同时代的培根使  2020-07-23 …

关于独立部分的写作问题,如果是比较对比型的题目并让你做出一个选择AORB,是否可以根据不同情况作出不  2020-11-03 …

各级人民代表大会的代表候选人的当选条件是()A、获得选区全体选民的过半数选票B、获得选举单位参加选举  2020-11-19 …

铺字典中的意思是:1、不完整,残缺;2、剩余的,将尽的;3、伤害,毁坏;4、凶恶.接上面在一道残阳铺  2020-11-28 …

象棋比赛共有奇数个选手参加,每位选手都同其他选手比赛一盘,记分办法是胜一盘得1分,和一盘各得0.负一  2021-01-01 …

某小组同学在日常生活中观察到一些现象:A:一杯水和半杯水的质量不同;B:同样的眼镜架,铜合金和钛合金  2021-01-16 …