高精度模板 大数加大数,可变数组vector实现
vector<int> Add(vector<int>& A, vector<int>& B)//采用引用传入vector,避免将其全部复制传值,使用引用会更快 { if (A.size() < B.size())return Add(B , A);//由于有大小位数的处理,我们默认位数较大的那个去加位数较小的那个 int T = 0;//进位标志 vector<int>C; for (int i = 0; i < A.size() || i < B.size(); i++) { T += A[i]; if (i < B.size())T += B[i];//检查B是否有与A对应的位,有就加上,没有就不加,也就是考虑B数组加完之后的情况 C.push_back(T % 10); T /= 10; }
if(T)C.push_back(T); return C; }