为实现快速排序算法,待排序列适合采用( )。A.顺序存储B.链式存储C.散列存储D.索引存储
为实现快速排序算法,待排序列适合采用( )。
A.顺序存储
B.链式存储
C.散列存储
D.索引存储
B.链式存储
C.散列存储
D.索引存储
参考解析
解析:快速排序的基本思想是:通过一趟排序将待排的记录划分为独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,然后再分别对这两部分记录继续进行快速排序,以达到整个序列有序。一趟快速排序的具体做法是:附设两个位置指示变量i和j,它们的初值分别指向序列的第一个记录和最后一个记录。设枢轴记录(通常是第一个记录)的关键字为pivotkey,则首先从j所指位置起向前搜索,找到第一个关键字小于pivotkey的记录,将其向前移,然后从i所指位置起向后搜索,找到第一个关键字大于pivotkey的记录,将其向后移,重复这两步直至i与j相等为止。显然,上述的过程需要顺序存储,以利于对元素迅速地定位。
相关考题:
● 以下关于快速排序算法的描述中,错误的是 (64) 。在快速排序过程中,需要设立基准元素并划分序列来进行排序。若序列由元素{12,25,30,45,52,67,85}构成,则初始排列为 (65) 时,排序效率最高(令序列的第一个元素为基准元素)。(64)A. 快速排序算法是不稳定的排序算法B. 快速排序算法在最坏情况下的时间复杂度为O(n1gn)C. 快速排序算法是一种分治算法D. 当输入数据基本有序时,快速排序算法具有最坏情况下的时间复杂度(65)A. 45,12,30,25,67,52,85B. 85,67,52,45,30,25,12C. 12,25,30,45,52,67,85D. 45,12,25,30,85,67,52
如果待排序序列中两个元素具有相同的值,在排序前后它们的相互位置发生颠倒,则称该排序算法是不稳定的。(41)是稳定的排序方法,因为这种方法在比较相邻元A.冒泡排序B.希尔排序C.快速排序D.简单选择排序
以下关于快速排序算法的描述中,错误的是( )。在快速排序过程中,需要设立基准元素并划分序列来进行排序。若序列由元素{12,25,30,45,52,67,85}构成,则初始排列为( )时,排序效率最高(令序列的第一个元素为基准元素)。A.快速排序算法是不稳定的排序算法B.快速排序算法在最坏情况下的时间复杂度为0(nlgn)C.快速排序算法是一种分治算法D.当输入数据基本有序时,快速排序算法具有最坏情况下的时间复杂度
快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于等于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了 (61) 算法设计策略。已知确定基准元素操作的时间复杂度为,则快速排序算法的最好和最坏情况下的时间复杂度为 (62) 。A.分治B.动态规划C.贪心D.回溯
快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于等于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了( )算法设计策略。已知确定基准元素操作的时间复杂度为Θ(n),则快速排序算法的最好和最坏情况下的时间复杂度为(请作答此空)。
快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于等于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了()算法设计策略。A、分治B、动态规划C、贪心D、回溯
单选题对初始状态为递增序列的表按递增顺序排序,最省时间的是( )算法。A堆排序B快速排序C插入排序D归并排序