对于一个包含n个元素的数组,使用归并排序算法进行排序,其空间复杂度是多少?
答案解析
归并排序是一种分治算法,它将数组分成两半分别进行排序,然后将排序好的两半合并成一个有序的数组。归并排序的空间复杂度主要来自于合并过程中需要的额外空间。在最坏情况下,归并排序需要O(n)的额外空间来存储合并过程中的临时数组。因此,归并排序的空间复杂度是O(n)。选项A表示常数空间复杂度,不符合归并排序的需求。选项B表示对数空间复杂度,也不符合。选项D表示的时间复杂度是归并排序的时间复杂度,而不是空间复杂度。
正确答案:C