我必须选择插入算法的最佳选择
1.在插入数据之前,我们必须搜索正确的位置 通过二分搜索。在获得该位置之后,我们通过将每个右手索引(在该想要的位置之后)踢到下一个来插入它 然后,我们可以将我的数据插入到正确的位置。
2.将数据输入到该数组的最后一个位置。并按合并排序对其进行排序。
我猜测首选需要时间 O(logn)(二进制搜索), O(n)搜索正确的位置。我可以得出结论,这一切都需要时间 O(logn)+ O(n)?
,第二个是 O(nlogn)(合并排序), O(1)(将数据放在最后一个位置)。再次,我能否得出结论,这一切都需要时间 O(nlogn)+ O(1)?
如果给定的数组大小是
a。)30
b。)2,000,000
哪种算法适合各种尺寸?
答案 0 :(得分:0)
如果你已经对列表进行了排序,那么逐个插入新元素对我来说更有意义。 如果你有一个数组。采取另一种方法是有意义的。