leetcode 字串相加

2021-08-31 01:42:27 字數 712 閱讀 6108

給定兩個字串形式的非負整數 num1 和num2 ,計算它們的和。

注意:num1 和num2 的長度都小於 5100.

num1 和num2 都只包含數字 0-9.

num1 和num2 都不包含任何前導零。

你不能使用任何內建 biginteger 庫, 也不能直接將輸入的字串轉換為整數形式。

思路:假設兩個字串的長度分別為size1和size2(我們假設size1>size2),那麼這兩個字串的和的長度一定不會超過size1+1.

然後從低位開始運算,每次先取num1的位,先判斷一下num2是否已經加完,如果加完就直接放進結果字串中,沒有的話要把num2的對應位加上,作為結果字串對應位的值。然後對這個值做乙個判斷是否超過了9,超過了需要把進製識別符號flag置1,

當size1位全部加完,最後需要判斷一下最高為位是否有進製,比如999+1,如果flag是1,則在結果字串中要給最高位前再加乙個1.

class solution 

else//如果ret沒有進製,那麼flag設定為0,下次計算時不進製。

s+=ret+'0';

}if (flag==1)//退出迴圈後,需要檢查最高位是否有進製

reverse(s.begin(),s.end());//s中的每一位是從低位到高位擺放的,所以逆置後就是正確答案

return s;

}};

leetcode 字串相加

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

LeetCode 字串相加 415

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

題記 字串相加 LeetCode

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