两个矩阵M1和M2将分别存储在数组A和B中。每个数组可以按行优先或列优先顺序存储在连续的内存位置中。计算M1×M2的算法的时间复杂度为
(A)如果A以行为主,而B以列为主,则最好
(B)如果两者都以行为主的顺序最好
(C)如果两者均以列为主的顺序最好
(四)独立于存储方案答案: (D)
说明:这是一个技巧问题。请注意,这些问题询问的是时间复杂度,而不是程序所花费的时间。对于时间复杂性,存储数组元素的方式无关紧要,我们始终需要访问相同数量的M1和M2元素以乘以矩阵。在数组中进行元素访问始终为常数或O(1)时间,该常数对于不同的方案可能有所不同,但是时间复杂度却没有。
这个问题的测验