![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法导论笔记
文章平均质量分 93
立flag,一定要自学完算法导论,依次专栏为见证,每周分享读书收获
IdlePerson.
宁波大学牛马一枚
展开
-
分治法及应用(附练习)
虽然没有优化,但是这个递归式给了我们优化的思路,我们可以想办法降低递归的时间消耗,就是减少计算矩阵乘法的次数或是改变分块的方式,改变分块的方式显然是行不通的,因为你将一个块矩阵分的小一些,其他块矩阵一定会变大,相当于没怎么变,那就只有减少计算矩阵乘法的次数了。分治是一个简单但是非常有效的算法,它的思想也很简单,就是将原问题分成几个规模较小但类似于原问题的子问题,递归的求解这些子问题,然后再将这些问题的结果合并,就得到的原问题的解。下面我们分析一下归并排序的时间复杂度,有人会说,这很简单呀,不就是。原创 2023-07-02 00:23:58 · 500 阅读 · 1 评论 -
详解快速幂(附习题)
再将这些结果累乘起来,并且利用模运算的性质,在累乘过程中不断取模,防止溢出,最后就可以得到最后的答案。写成一个二进制累加的形式,再利用幂的运算规则,就可以将。的就将其乘起来,并且不断取模保证不溢出,最后遍历完。都会溢出),这时就需要快速幂来解决这个问题。,并且这样一个大的数字很难存储在计算机中(的一个二进制位,我将幂次写成二进制的形式。的二进制位,循环结束,得到的乘积就是结果。快速幂其实就是利用了分治的思想,将。的位置,就是上式中乘数的幂次。两个部分,一直细分,直到幂次。,这个结果就是模运算的结果。原创 2023-06-23 20:05:59 · 75 阅读 · 0 评论