leetcode 415 字串相加

2021-10-03 19:22:40 字數 1243 閱讀 6965

字串相加,思想就是:

從低位加到高位,逢十進一

如何逢十進一,設定乙個標誌位flag,表示進製,僅為的大小為整除10,對10的餘數則為此位上的數

//412.

string addstrings

(string num1, string num2)

for(

int i = sub -

1; i >=0;

--i)

if(flag ==1)

result +

='1'

;reverse

(result.

begin()

, result.

end())

;return result;

}

如果按照python,可以直接轉為str—>int,但是,按照演算法角度寫:

def

addstrings

(self, num1:

str, num2:

str)

->

str:

iflen

(num1)

<

len(num2)

: num1, num2 = num2, num1

sub, flag =

len(num1)

-len

(num2),0

result =

""for i in

range

(len

(num2)-1

,-1,

-1):

temp =

int(num2[i])+

int(num1[i + sub]

)+ flag

flag = temp //

10 result +=

str(temp%10)

for i in

range

(sub-1,

-1,-

1): temp =

int(num1[i]

)+flag

flag=temp //

10 result+=

str(temp%10)

if flag==1:

result +=

'1'return result[::

-1]

LeetCode 415 字串相加

給定兩個字串形式的非負整數 num1 和num2 計算它們的和。注意 num1 和num2 的長度都小於 5100.num1 和num2 都只包含數字 0 9.num1 和num2 都不包含任何前導零。你不能使用任何內建 biginteger 庫,也不能直接將輸入的字串轉換為整數形式。利用字元流,將...

LeetCode 415 字串相加

給定兩個字串形式的非負整數 num1 和num2 計算它們的和。注意 num1 和num2 的長度都小於 5100.num1 和num2 都只包含數字 0 9.num1 和num2 都不包含任何前導零。你不能使用任何內建 biginteger 庫,也不能直接將輸入的字串轉換為整數形式。無 class...

LeetCode 415 字串相加

題目 給定兩個字串形式的非負整數 num1 和num2 計算它們的和。注意 num1 和num2 的長度都小於 5100.num1 和num2 都只包含數字 0 9.num1 和num2 都不包含任何前導零。你不能使用任何內建 biginteger 庫,也不能直接將輸入的字串轉換為整數形式。原始碼 ...