LeetCode演算法 字串相乘

2021-10-08 22:32:46 字數 1267 閱讀 4402

題目:

給定兩個以字串形式表示的非負整數 num1 和 num2,返回 num1 和 num2 的乘積,它們的乘積也表示為字串形式。

示例 1:

輸入: num1 = 「2」, num2 = 「3」

輸出: 「6」

示例 2:

輸入: num1 = 「123」, num2 = 「456」

輸出: 「56088」

說明:num1 和 num2 的長度小於110。

num1 和 num2 只包含數字 0-9。

num1 和 num2 均不以零開頭,除非是數字 0 本身。

不能使用任何標準庫的大數型別(比如 biginteger)或直接將輸入轉換為整數來處理。

直接使用豎式填充的方法求解

**如下所示:

#include

#include

#include

using

namespace std;

class

solution

if(cf !=0)

tmparr.

push_back

(cf)

;reverse

(tmparr.

begin()

, tmparr.

end())

; vecarr.

push_back

(tmparr);}

if(vecarr.

size()

>=2)

int maxs = vecarr[vecarr.

size()

-1].

size()

;for

(int i =

0; i < vecarr.

size()

; i++)}

} cf =0;

for(

int i = vecarr[0]

.size()

-1; i >=

0; i--

)while

(cf)

reverse

(retstr.

begin()

, retstr.

end())

;return retstr;}}

;int

main()

**比較長,但是比較好理解 . . .

leetcode 字串相乘

題目 給定兩個以字串形式表示的非負整數num1和num2,返回num1和num2的乘積,它們的乘積也表示為字串形式。輸入 num1 2 num2 3 輸出 6 輸入 num1 123 num2 456 輸出 56088 這一題的思路其實就是做一次兩數相乘的,從個位開始,相乘如果大於10,則進1,把這...

LeetCode 字串相乘

q 給定兩個以字串形式表示的非負整數 num1 和 num2,返回 num1 和 num2 的乘積,它們的乘積也表示為字串形式。示例 1 輸入 num1 2 num2 3 輸出 6 示例 2 輸入 num1 123 num2 456 輸出 56088 說明 num1 和 num2 的長度小於110。...

LeetCode 字串 字串相乘

給定兩個以字串形式表示的非負整數 num1 和 num2,返回 num1 和 num2 的乘積,它們的乘積也表示為字串形式。示例 輸入 num1 2 num2 3 輸出 6 輸入 num1 123 num2 456 輸出 56088 做這題之前可以先做一下字串相加。模擬人做乘法,兩個數相乘,首先將第...