采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数己经排好序,将第i个
采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数己经排好序,将第i个整数依次和第i-1, i-2, ...个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5.2.4.6.1.3}进行从小到大排序,则需要进行(31)次整数之间的比较。对于该排序算法,输入数据具有(32)特点时,对整数进行从小到大排序,所需的比较次数最多。
A.9
B.10
C.12
D.13
一般来说,插入排序都采用in-place在数组上实现。具体算法描述如下:(1)从第一个元素开始,该元素可以认为已经被排序(2)取出下一个元素,在已经排序的元素序列中从后向前扫描(3)如果该元素(已排序)大于新元素,将该元素移到下一位置(4)重复步骤3,直到找到已排序的元素小于或者等于新元素的位置(5)将新元素插入到下一位置中(6)重复步骤2~5对于本题:{5.2.4.6.1.3}第一趟:第一次比较,5大于2(新元素),元素5向后位移一位,而5之前无数据,即将2插入到1位,2,5第二趟:第一次比较,5大于4(新元素),元素5向后移一位,再进行第二次比较,2小于4(新元素),即将4插入2之后的一位,即2,4,5依次类推,,,所以比较的次数为1+2+1+4+4=12如果目标是把n个元素的序列升序排列,那么采用插入排序存在最好情况和最坏情况。最好情况就是,序列已经是升序排列了,在这种情况下,需要进行的比较操作需(n-1)次即可。最坏情况就是,序列是降序排列,那么此时需要进行的比较共有n(n-1)/2次。插入排序的赋值操作是比较操作的次数加上(n-1)次。平均来说插入排序算法的时间复杂度为O(n^2)。
快速排序的小问题对给定的整数序列(541,132,984,746,518,181,946,314, 其他 2020-04-07 …
调整语序。(1)黄昏时分,风停了,接着就下起了鹅毛般的大雪来。(2)前些天暖和得如同阳春三月。(3 其他 2020-05-13 …
哪里有好一点的多音字整理?最好是按拼音顺序来整理的 语文 2020-05-14 …
高中语文基础知识怎么整理的好高中有很多不认识字音字形的词,我们班有的同学按开头的字母顺序积累,但个 其他 2020-05-16 …
1.请你搜集街上好的店名.选出其中的三例,具体说说它们各好在哪里.2.调整语序,不增改文字,将下面 语文 2020-05-17 …
两个整数a,b以一定顺序排在一起,称为一个整数序偶,记为(a,b);当a不等于b时……由于提问打不 数学 2020-06-07 …
“整顿”前面如果要加个词,用什么好?强化整顿?全面整顿?好像都不太好“加大”“强化”在汉语里是什么 其他 2020-06-15 …
处理,管理,整理,梳理,1.这些错乱的句子需要我们重新把顺序()好.2.大量的文件堆积在桌上,处理 其他 2020-06-27 …
C++连续正整数描述一个正整数有可能可以被表示为n(n>=2)个连续正整数之和,如:15=1+2+ 其他 2020-06-27 …
英语翻译有句名言,单个的人是不完整的,找到另一半方完整.是的,好的伴侣给你向上的动力,生活上的照顾 英语 2020-07-03 …