例子问题
问题1:排序
选择排序在最坏情况下的运行时间是多少(在Big-O符号中?)
选择排序由外部和内部的for循环组成,它们将未排序数组的元素交换为已排序数组。每个循环运行的最大可能次数是数组中元素的数量。因此,最坏的运行时间是.
问题1:排序
真或假。
选择排序比合并排序更快。
假
真正的
假
MergeSort的运行时间是O(N)。选择排序的运行时间为O(N2).选择排序有O(N2)比较,因为在算法中的交换。
问题1:排序
选择排序在最坏情况下的运行时间是多少(在Big-O符号中?)
选择排序由外部和内部的for循环组成,它们将未排序数组的元素交换为已排序数组。每个循环运行的最大可能次数是数组中元素的数量。因此,最坏的运行时间是.
问题1:排序
真或假。
选择排序比合并排序更快。
假
真正的
假
MergeSort的运行时间是O(N)。选择排序的运行时间为O(N2).选择排序有O(N2)比较,因为在算法中的交换。
问题3:排序
下面哪个语句解释了插入排序?
列表被分解成更小的列表,这些列表被排序并合并回一起。
所有低于平均值的数字都插入左边,其余的插入右边。然后对左边和右边重复这个过程,直到所有的数字都排序完毕。
这些都不是插入排序。
它从列表中删除一个元素,找到它应该位于的位置,并将其插入到该位置,直到没有更多的元素保留。
该列表将被迭代多次,直到找到所需的第一个数字,然后对所有数字重复此过程。
它从列表中删除一个元素,找到它应该位于的位置,并将其插入到该位置,直到没有更多的元素保留。
插入排序从列表中删除一个元素,检查它旁边的值,看它是大还是小,直到找到左边的数小,右边的数大的位置,并把它放在那里。
问题1:插入排序
{1, 9, 5, 4, 2, 0,4}
插入排序经过四次迭代后,这组数字会变成什么样子?
{1, 4, 9, 5, 2, 0, 4}
{1, 4, 5, 9, 2, 0, 4}
{1, 9, 4, 5, 2, 0, 4}
{1, 4, 4, 5, 9, 2, 0}
{1, 4, 4, 9, 5, 2, 0}
{1, 4, 5, 9, 2, 0, 4}
插入排序是一种排序算法,它从数组的开头开始,并在数组的每次迭代中对值进行从小到大的排序。
因此,插入排序经过4次迭代后,前4个数字将按照从小到大的顺序排列。
第41题:计算机科学
在选择排序算法时,我们考虑下列哪项?
我空间效率。
2运行时的效率
3数组大小
四、实现语言
一,二,三,四
我,二世
二,三,四
I, II, III
二,四
一,二,三,四
在选择排序算法时,所有的选择都很重要。空间和时间复杂度是我们衡量算法性能的特征。数组的大小直接影响算法的性能。此外,编写算法的语言也会影响性能(例如,插入排序在一种语言中可能比另一种语言运行得更快,这是由于语言的设计方式)。
问题1:归并排序
归并排序是如何完成的?
将列表中的每个元素与所有其他元素进行比较,然后将其插入到适合的位置。
原始列表被分成两组,然后从那里开始排序。
如果有偶数个元素,列表被分成两组,排序,然后合并在一起。如果有奇数编号的元素,列表被分成三组。
原始列表被不断地分解为子列表,直到每个子列表包含1个元素,然后子列表被组合在一起。
原始列表被分解为4个子列表,然后组合在一起。
原始列表被不断地分解为子列表,直到每个子列表包含1个元素,然后子列表被组合在一起。
在归并排序中,一个列表被分解为包含1个元素的子列表。然后将每个元素与另一个元素进行比较并排序。然后将每个2元素组与其他2元素组结合,比较每组的第一个值并决定如何使用4个元素。较大的一组4个将与另一组4个进行比较,直到进程结束并对列表进行排序。
第41题:标准操作与算法
上图表示的是哪种排序算法?
插入排序
快速排序
归并排序
选择排序
Bubblesort
归并排序
归并排序包括将一个未排序的列表分解为子数组;对每个子数组进行排序,并将子数组重新组合成更大的数组。
问题3:排序
在下面的选项中,对于一个无序列表,当列表的大小是奇数且列表的大小是有限的时候,最有效的排序算法是什么?
归并排序
选择排序
冒泡排序
插入排序
归并排序
归并排序是这些选择中最有效的。选择排序和插入排序都使用O(N2)时间。冒泡排序似乎是一个很好的答案,但它使用O(N2)的时间,可以调整为使用O(N)时间,但只有在列表几乎排序时,所以这是一个赌博。归并排序总是使用O(NlogN)时间,因此在这四种选择中总是最有效的。