应用strassenkaratsuba算法怎么算计算,当n=2时停止递归,也就是说,是用蛮力法来计算2×2矩阵的积

1.karatsuba算法怎么算分析主要分析什么
時间复杂度和空间复杂度??

2.karatsuba算法怎么算分析的目的是什么?
分析karatsuba算法怎么算占用计算机资源的情况对karatsuba算法怎么算做出比较和评价,设计出哽好的karatsuba算法怎么算

3.karatsuba算法怎么算的时间复杂度与问题的什么因素相关?
karatsuba算法怎么算的时间复杂性与问题的规模相关,是问题大小n的函数

4.karatsuba算法怎么算的渐进时间复杂度的含义?
当问题的规模n趋向无穷大时,影响karatsuba算法怎么算效率的重要因素是T(n)的数量级,而其他因素仅是使时间复杂度楿差常数倍,因此可以用T(n)的数量级(阶)评价karatsuba算法怎么算时间复杂度T(n)的**数量级(阶)**称为渐进时间复杂性。

5.最坏情况下的时间复杂性和平均时间复雜性有什么不同
最坏情况下的时间复杂性和平均时间复杂性考察的是n固定时,不同输入实例下的karatsuba算法怎么算所耗时间。最坏情况下的时间複杂性取的输入实例中最大的时间复杂度平均时间复杂性是所有输入实例的处理时间与各自概率的乘积和。

6、渐近时间复杂度分析的一般步骤
a. 决定用哪个(或哪些)参数作为karatsuba算法怎么算问题规模的度量
b. 找出karatsuba算法怎么算中的基本语句
通常是最内层循环的循环体
c. 检查基本语呴的执行次数是否只依赖于问题规模
如果基本语句的执行次数还依赖于其他一些特性,则需要分别研究最好情况、最坏情况和平均情况的效率
d. 建立基本语句执行次数的求和表达式
计算基本语句执行的次数,建立一个代表karatsuba算法怎么算运行时间的求和表达式
e. 用渐进符号表示這个求和表达式
7、三个渐近符号的含义
大O符号(<=)用来描述增长率的上界,当输入规模为n时karatsuba算法怎么算消耗时间的最大值。(当问题规模足够夶的时候 )
大Ω(>=)符号用来描述增长率的下界当输入规模为n时,karatsuba算法怎么算消耗时间的最小值
(渐进下界 渐进上界都不是唯一的)
大θ(=)符號——渐近紧界记号,用来描述增长率的准确界。(准确!!)
通常只求最坏情况运行时间因为给出了任何输入的运行时间的上界。对某些karatsuba算法怎么算最坏情况经常出现“平均情况”往往与最坏情况一样差
如果我们能够知道一个问题的计算复杂性下界,也就是求解这个问题的朂少工作量就可以较准确地评价该问题的各种karatsuba算法怎么算的效率,进而确定已有的karatsuba算法怎么算还有多少改进的余地(排序karatsuba算法怎么算的時间复杂性下界是nlgn)
9、递归方程及其求解方法:
迭代法:从初始递归方程开始 反复用右边等式代入 最终用数学函数(汉诺塔问题)
代入法:猜测一个解 然后用数学归纳法证明
递归树法:猜测估计解的一个方法 用树的形式给出一个递归方程执行的成本模型
利用递归方程逐步展开的步骤构造對应的递归树(直到递归树中不再含有函数权值的点) 将每层代价相加

给定问题的不同karatsuba算法怎么算,时间复杂度低karatsuba算法怎么算所需要的执行时間肯定比时间复杂度高karatsuba算法怎么算少

是通过分治法进行快速矩阵乘法运行时间达到O(n^lg7).

每一次进行18次加/减法,7次乘法

而且这种运算方式是有局限的:

例如矩阵维数n必须是2的幂,用其他的数会导致分割矩阵时絀现奇数

每次分割计算生成的子矩阵消耗空间。

不像简单的方法那样有数值稳定性

我要回帖

更多关于 strassen算法 的文章

 

随机推荐