Time complexity 快速排序的最坏情况复杂性是什么?
假设第一个元素始终被选为轴心元素,如果第一个元素被选为用于分区的轴心元素,您能详细说明最坏情况发生的位置及其时间复杂性吗 在本例中,快速排序显示了其最糟糕的强制转换复杂性-O(n^2)Time complexity 快速排序的最坏情况复杂性是什么?,time-complexity,quicksort,Time Complexity,Quicksort,假设第一个元素始终被选为轴心元素,如果第一个元素被选为用于分区的轴心元素,您能详细说明最坏情况发生的位置及其时间复杂性吗 在本例中,快速排序显示了其最糟糕的强制转换复杂性-O(n^2) 更准确地说,当要排序的输入按降序或升序(如果第一个元素是枢轴元素)时,可以观察到快速排序的最坏情况复杂性O(n^2) 出现这种最差性能的原因是,分区后,一个分区的大小为1,另一个分区的大小为n-1 因此,快速排序“n”元素的时间T(n)= 对“n”个元素进行分区所需的时间O(n)+对“n-1”个元素进行快速排序所
更准确地说,当要排序的输入按降序或升序(如果第一个元素是枢轴元素)时,可以观察到快速排序的最坏情况复杂性O(n^2) 出现这种最差性能的原因是,分区后,一个分区的大小为1,另一个分区的大小为n-1
因此,快速排序“n”元素的时间T(n)=
对“n”个元素进行分区所需的时间O(n)+对“n-1”个元素进行快速排序所需的时间T(n-1)
所以,T(n)=T(n-1)+O(n)
=>T(n)=O(n^2)在快速排序中,如果选择第一个元素作为划分的轴心元素,则
在本例中,快速排序显示了其最糟糕的强制转换复杂性-O(n^2)
更准确地说,当要排序的输入按降序或升序(如果第一个元素是枢轴元素)时,可以观察到快速排序的最坏情况复杂性O(n^2) 出现这种最差性能的原因是,分区后,一个分区的大小为1,另一个分区的大小为n-1
因此,快速排序“n”元素的时间T(n)=
对“n”个元素进行分区所需的时间O(n)+对“n-1”个元素进行快速排序所需的时间T(n-1)
所以,T(n)=T(n-1)+O(n)
=>T(n)=O(n^2)