单项选择题
关于递归算法,下面的()说明是错误的。
A.所有的递归问题都可以找到相应的非递归方式
B.占用的存储空间比非递归算法要多
C.递归算法的运行效率较低
D.边界条件与递归方程是递归函数的两个要素
点击查看答案&解析
相关考题
-
单项选择题
下面的程序用于实现数字序列的全排序,应该写入()。templatevoid Perm(Type list[],in tk,in tm){if(k==m){for(inti=0;i< =m;i++){cout< }else{for(inti=k;i< =m;i++){Swap(list[k],list[])Swap(list[k],list[i]);
A.Perm(list,m,k+1)
B.Perm(list,m,k)
C.Perm(list,k+1,m)
D.Perm(list,k,m) -
单项选择题
“随机找出一个数,可以随机取,也可以取固定位置,作为基准数。其他的数(从首元素开始)同基准数进行比较、交换,使得比基准小的数放在左边,比基准大的数放到右边,这样就将一个数组分成了两个子数组。再按照同样的方法把子数组再分成更小的子数组,直到不能分解为止。”这是()的算法思想。
A.快速排序
B.合并排序
C.起泡排序
D.选择排序 -
单项选择题
关于快速排序算法的时间复杂度,正确的是()。
A.最坏时间复杂度发生在在每次划分,两个子问题都成比例的情况,复杂度是O(n)
B.最好时间复杂度发生在每次划分,两个子问题都成比例的情况,复杂度是O(n logn)
C.最好时间复杂度发生在每次划分,基准元素是第一个且是最小元素,复杂度是O(n logn)
D.平均时间复杂度:O(logn)
