415. 字符串相加

415. 字符串相加

cpp 复制代码
class Solution 
{
public:
    string addStrings(string num1, string num2)
    {
        //i j分别指向当前字符串的最后一位
        int i = num1.length() - 1;
        int j = num2.length() - 1;
        int add = 0;
        string s = "";
        //不要忽略两个串都遍历完了 但是还有一个进位
        while (i >= 0 || j >= 0 || add != 0) 
        {
            //只要还没遍历完 当前字符变数字
            int x = i >= 0 ? num1[i] - '0' : 0;
            int y = j >= 0 ? num2[j] - '0' : 0;
            int result = x + y + add;
            //计算进位
            add = result / 10;
            //当前位数字变字符 尾插进s 
            s.push_back('0' + result % 10);
            //i j前移
            i -= 1;
            j -= 1;
        }
        reverse(s.begin(), s.end());
        return s;
    }
};
相关推荐
-指短琴长-4 分钟前
ProtoBuf速成【基于C++讲解】
android·java·c++
Cx330❀13 分钟前
《C++ 搜索二叉树》深入理解 C++ 搜索二叉树:特性、实现与应用
java·开发语言·数据结构·c++·算法·面试
不染尘.1 小时前
2025_11_5_刷题
开发语言·c++·vscode·算法·贪心算法·动态规划
2501_929177581 小时前
C++中的虚基类
开发语言·c++·算法
QT 小鲜肉1 小时前
【QT/C++】Qt网络编程进阶:TCP网络编程的基本原理和实际应用(超详细)
c语言·开发语言·网络·c++·qt·学习·tcp/ip
艾莉丝努力练剑2 小时前
【C++:map和set的使用】C++ map/multimap完全指南:从红黑树原理入门到高频算法实战
大数据·开发语言·c++·人工智能·stl·map
ShineSpark10 小时前
Crashpad 在windows下编译和使用指南
c++·windows
Larry_Yanan11 小时前
QML学习笔记(五十)QML与C++交互:QML中单例C++对象
开发语言·c++·笔记·qt·学习·ui·交互
im_AMBER11 小时前
算法笔记 09
c语言·数据结构·c++·笔记·学习·算法·排序算法
SweetCode12 小时前
C++ 实现大数加法
开发语言·c++·算法