输入两个字符串a和b,字符串内容为二进制数字,求两个字符串相加的结果,加法计算方法以二进制方式计算,并返回对应的字符串结果。要求程序尽可能的高效。 字符串长度不超过100。

区块链毕设网qklbishe.com为您提供问题的解答

输入两个字符串a和b,字符串内容为二进制数字,求两个字符串相加的结果,加法计算方法以二进制方式计算,并返回对应的字符串结果。要求程序尽可能的高效。
字符串长度不超过100。

一道很好较难的字符串题,出得很好(头文件省了)

public class AddBinary {     public static String addBinary(String a, String b) {         int i = a.length() - 1;         int j = b.length() - 1;         int da = 0;         int db = 0;         int adv = 0;         StringBuffer result = new StringBuffer();         while (i >= 0 && j >= 0) {             da = a.charAt(i--) == '0' ? 0 : 1;             db = b.charAt(j--) == '0' ? 0 : 1;             int d = da + db + adv;             result.append(d % 2 == 0 ? '0' : '1');             adv = d >> 1;         }         if (i >= 0) {             while (i >= 0) {                 da = a.charAt(i--) == '0' ? 0 : 1;                 int d = da + adv;                 result.append(d % 2 == 0 ? '0' : '1');                 adv = d >> 1;             }         } else if (j >= 0) {             while (j >= 0) {                 db = b.charAt(j--) == '0' ? 0 : 1;                 int d = db + adv;                 result.append(d % 2 == 0 ? '0' : '1');                 adv = d >> 1;             }         }         if (adv == 1) {             result.append('1');         }         return result.reverse().toString();     }     public static void main(String args[])     {         String consult=addBinary("11","1");         System.out.print("consult is "+consult);     }  }

54:31

以上就是关于问题输入两个字符串a和b,字符串内容为二进制数字,求两个字符串相加的结果,加法计算方法以二进制方式计算,并返回对应的字符串结果。要求程序尽可能的高效。 字符串长度不超过100。的答案

欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。

区块链NFT链游项目方科学家脚本开发培训

承接区块链项目定制开发

微信:btc9767

QQ :1330797917

TELEGRAM: BTCOK9

承接区块链项目定制开发


qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 输入两个字符串a和b,字符串内容为二进制数字,求两个字符串相加的结果,加法计算方法以二进制方式计算,并返回对应的字符串结果。要求程序尽可能的高效。 字符串长度不超过100。