看了题解之后的个人理解:
方法一:利用大整数相加的思路。
首先先把两个二进制字符串处理成等长的字符串,短的那个字符串通过+‘0’补位。
然后对应位置的二进制数相加,如果相加的数字大于等于2,就对字符串下一位进行+1。
最后要判断字符串首位是否大于等于2,要是大于等于2就通过‘1’+字符串进行进位。
再这里要注意一件事情:
字符串相减其实是字符串对应的ASCII码进行相减,所以在进行运算的时候,要注意‘0’ - ‘0’ = 0和‘0’ + 1 = ‘1’;把字符串变成整型来处理。当然在计算的最后也要把整型再转换回字符串,要不然根据ASCII码会变成其他字符。
方法二:位运算
这个我还在自学中,后续再研究。哈哈哈