考虑一个由–ve和+ ve数组成的数组。完全分离具有相同符号的数字(即,一侧全部为+ ve,然后一侧全部为-ve)的算法在最坏情况下的时间复杂度是什么?
(A) O(N)
(B) O(N对数N)
(C) O(N * N)
(D) O(N日志日志N)
答案: (A)
解释:
在这里,我们可以使用快速排序的分区算法进行隔离,答案将为O(N)。
选择第一个元素作为枢轴,无论我们不在乎它的符号是什么,并在枢轴位置保留一个额外的索引。
这个问题的测验
📅  最后修改于: 2021-06-30 01:15:49             🧑  作者: Mango
考虑一个由–ve和+ ve数组成的数组。完全分离具有相同符号的数字(即,一侧全部为+ ve,然后一侧全部为-ve)的算法在最坏情况下的时间复杂度是什么?
(A) O(N)
(B) O(N对数N)
(C) O(N * N)
(D) O(N日志日志N)
答案: (A)
解释:
在这里,我们可以使用快速排序的分区算法进行隔离,答案将为O(N)。
选择第一个元素作为枢轴,无论我们不在乎它的符号是什么,并在枢轴位置保留一个额外的索引。
这个问题的测验