首先,我14岁,只有2年的编码经验。 6个月的C ++经验。我知道基本的Python,Java和C ++。
我有3个问题:
1)哪种排序算法最快?
2)是否有内置的排序功能?
3)这个叫做时间复杂度的东西是什么?
答案 0 :(得分:0)
1)哪种排序算法最快? 自2011年以来,Two-Pivot-Quicksort(雅罗斯拉夫斯基)速度最快,比快速排行快10%。它在java库中。它应该对小的子列表使用插入排序。
2)是否有内置的排序功能?
不,但大多数库包含快速排序功能
3)这个叫做时间复杂度的东西是什么?
这是执行算法所需的估计时间的粗略度量。 Quicksort(和2-Pivot-Quicksort)需要O(n ln n),这意味着对于未排序的长度n(n = 300)列表,你需要n * ln(n)步的倍数(300 * ln300~1711)完成排序。 该因子未指定并隐式包含在符号O()中(google for Big-Oh!)