类比二分搜索算法,设计A分搜索算法(k为大于2的整数)如下:首先检查n/k处(n为被搜索集合的元素个数)的元素是否等于要搜索的值,然后检查2n/k处的元素,...,这样,或者找到要搜索的元素,或者把集合缩小到原来的1/k;如果未找到要搜索的元素,则继续在得到的集合上进行k分搜索;如此进行,直到找到要搜索的元素或搜索失败。此A分搜索算法在最坏情况下搜索成功的时间复杂度为(1),在最好情况下搜索失败的时间复杂度为(2)。
A.O(logn)
B.O(nlogn)
C.O(logkn)
D.O(nlogkn)
第1题:
给定n行n列的整数矩阵A,其中每行的整数从左到右升序排列,每列的整数从上到下降序排列。即 i, j ∈ {1, ..., n-1} 时,矩阵元素满足以下关系:A[i, j] < A[i, j + 1] 和 A[i, j] > A[i + 1, j]。给定一个整数x,试问矩阵A 是否有整数x。 例如:给定以下矩阵A,如果 x = 5,返回true;如果 x = 10,返回false。 A = 7 8 9 3 4 6 1 2 5 请设计一个复杂度为O(n)的搜索算法。
第2题:
给定n个整数,n个数的取值范围为[1,k], 计数排序的时间复杂度是O (n+k) 。
第3题:
二分搜索算法是利用()实现的算法。注意:填空填1234中的某个数,不填汉字 1.分治策略 2.动态规划 3. 贪心法 4. 回溯法
第4题:
使用二分搜索算法在n个有序元素表中搜索一个特定元素,在最佳情况下,搜索的时间复杂性为 ,在最坏情况下,搜索的时间复杂性为
第5题:
4.二分搜索算法是利用()实现的算法。