我正在学习算法课程,在那里我看到计数排序的时间复杂度为 O(n+k),其中 k 是数字范围,n 是输入大小。我的问题是,当k和n的差值太大时,比如k=O(n 2 )或者O(n 3 ),我们可以说复杂度是O(n 2 )还是O(n 3 ) ? 那么在这种情况下计数排序不是一个明智的方法,我们可以使用归并排序。我对吗?
user2110714
问问题
10905 次
我正在学习算法课程,在那里我看到计数排序的时间复杂度为 O(n+k),其中 k 是数字范围,n 是输入大小。我的问题是,当k和n的差值太大时,比如k=O(n 2 )或者O(n 3 ),我们可以说复杂度是O(n 2 )还是O(n 3 ) ? 那么在这种情况下计数排序不是一个明智的方法,我们可以使用归并排序。我对吗?