1. 大数相加
相加比较简单, 以加法竖式的方式进行相加即可.
2. 大数相减
在相减中遇到一个多次借位的问题, 如: 100, 000, 002 - 989 ; 由于0没有数, 要一直往上借位, 直到借到位为止. 该怎么解决?
1). 当第一次借位时, 判断下一位是否为0;
2). 因为借位每一位最多借1, 那么被减数直接设置为9(已知被借位的数是0, 10 - 1 = 9), 设置完继续判断下一位是否还为0, 如果是0就继续设置.
3). 上面还有个lastIsZero, 意为上一个数是否为0, 设置完被减数后, 继续判断下一位是否为0, 如果不是, 那么它肯定是被0借位的数.
4). 如果上一个数是否为0, 那么被减数自减1, 然后设置为false.
while (!linkFirst.empty()) {
// first > second 被减数 > 减数
int subtracted = linkFirst.pop