python 递归乘法
生活随笔
收集整理的這篇文章主要介紹了
python 递归乘法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
遞歸乘法
遞歸乘法。 寫一個遞歸函數(shù),不使用 * 運算符, 實現(xiàn)兩個正整數(shù)的相乘。可以使用加號、減號、位移,但要吝嗇一些。示例1:輸入:A = 1, B = 10輸出:10 示例2:輸入:A = 3, B = 4輸出:12題解 遞歸解法
class Solution:"""解題思路: 遞歸法1. A * B 可分為兩種情況討論, 以A為例:1.當A為偶數(shù)時:可分解為 A // 2 * B + A // 2 * B2.當A為奇數(shù)時:可分解為 A // 2 * B + A // 2 * B + B"""def multiply(self, A: int, B: int) -> int:if A == 0:return 0if A == 1:return B# 添加備忘錄 解決重復計算問題half = self.multiply(A // 2, B)if A % 2 == 0:return half + halfelse:return half + half + B總結
以上是生活随笔為你收集整理的python 递归乘法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 冒泡排序算法(超级详细)
- 下一篇: python 插入排序算法