题目内容

在寻找n个元素中第k小的元素的问题中,如采用快速排序算法思想,运用分治法对n个元素进行划分,如何选择划分基准?下面( )答案最合理。

A. 随机选择一个元素作为划分基准
B. 取子序列的第一个元素作为划分基准
C. 用中位数的中位数方法寻找划分基准
D. 以上皆可行,但不同方法的算法复杂度上界可能不同

查看答案
更多问题

有1000瓶水,其中有一瓶有毒,小白鼠只要尝一点带毒的水24小时后就会死亡,至少需要多少只小白鼠才能只通过一次实验即可鉴别出哪瓶水有毒( )。

A. 8
B. 9
C. 10
D. 11

分治算法一般包括“分”与“合”两个主要子过程,合并排序算法的重点是()子过程,快速排序算法的重点是()子过程。

用选择排序法对数据7,6,3,9,2从大到小排序,共需经过多少次数据对调_______。

给定已按升序排好序的n个元素a[0:n-1],现要在这n个元素中查找特定元素x。据此内容设计出二分搜索算法,请填空。int BinarySearch(int a[], int x, int left, int right){ while( ){int mid= ;if( x==a[mid] )return mid;if( ) right=mid-1; else left=mid+1}return -1;}

答案查题题库