出一道特经典的题大家做做!
给定—个二维n×n数组A[1...n][1.....n] 和参数k ,其中数组每行和每列从小到大排
序。分别设计下列算法a ∼ h,判断数组中是否存在k ,如果存在算法返回true ,否则
算法返回false 。例如:8×8二维数组A 如下
2 4 7 11 12 13 19 23
3 8 14 16 17 24 25 27
6 10 19 27 31 35 37 42
9 13 26 30 32 40 43 48
11 15 29 34 41 42 45 50
14 17 33 37 44 49 51 61
18 22 35 38 46 53 57 63
21 25 39 42 47 54 60 64
(a)设计—个时间复杂性为O(n2)迭代算法。
(b)设计—个时间复杂性为O(n2)递归算法。
(c)设计—个时间复杂性为O(nlogn)迭代算法。
(d)设计—个时间复杂性为O(nlogn)递归算法。
(e)设计—个时间复杂性为O(n)迭代算法。
(f)设计—个时间复杂性为O(n)递归算法。
(g)设计—个时间复杂性为O(logn) 迭代算法。
(h)设计—个时间复杂性为O(logn) 递归算法。
这道题很意思很能锻炼水平的