当前位置:中级软件设计师题库>算法设计和分析题库

问题:

[单选] 在有n个无序无重复元素值的数组中查找第i小的数的算法描述如下:任意取一个元素r,用划分操作确定其在数组中的位置,假设元素r为第k小的数。若i等于k,则返回该元素值;若i小于k,则在划分的前半部分递归进行划分操作找第i小的数;否则在划分的后半部分递归进行划分操作找第k-i小的数。该算法是一种基于()策略的算法。

A . 分治
B . 动态规划
C . 贪心
D . 回溯

软胶囊囊壁的可塑性和弹性与明胶、增塑剂、水的比例有关,三者的比例通常是1:(0.4~0.6):1。() 压制包衣法是最常用的片剂包衣方法。() 薄膜衣片应在包薄膜衣材料前检查重量差异并符合规定。() 渗透泵型片剂是一种控释片。() 孟山都硬度计、片剂四用测定仪都可以定量测定片剂的硬度。() 在有n个无序无重复元素值的数组中查找第i小的数的算法描述如下:任意取一个元素r,用划分操作确定其在数组中的位置,假设元素r为第k小的数。若i等于k,则返回该元素值;若i小于k,则在划分的前半部分递归进行划分操作找第i小的数;否则在划分的后半部分递归进行划分操作找第k-i小的数。该算法是一种基于()策略的算法。
参考答案:

  参考解析

分治算法的基本思想是将一个难以直接解决的大问题分解成一些规模较小的小问题以便各个击破,分而治之。分治算法的每一层都有3个步骤:分解、求解和合并。本题的查找算法,不断划分数组,缩小查找范围,可见该算法是基于分治策略的算法。

在线 客服