【LeetCode從零單排】No67.AddBinary
題目
Given two binary strings, return their sum (also a binary string).
For example,
a = "11"
b = "1"
Return "100"
.
程式碼
public class Solution {
public String addBinary(String a, String b) {
String lon= a.length()-b.length()>=0 ? a:b;
String sho= a.length()-b.length()<0 ? a:b;
char[] lon_char=lon.toCharArray();
char[] sho_char=sho.toCharArray();
char temp='0';
int final_length=lon.length()-1;
int index=0;
String[] str=new String[lon.length()+1];
String addBinary_str="";
for(int i=0;i<sho.length();i++){
String temp_s=String.valueOf(temp);
String sho_char_s=String.valueOf(sho_char[sho.length()-1-i]);
String lon_char_s=String.valueOf(lon_char[lon.length()-1-i]);
switch(Integer.parseInt(temp_s)+Integer.parseInt(sho_char_s)+Integer.parseInt(lon_char_s))
{ case 0:
temp='0';
str[index++]="0";
break;
case 1:
temp='0';
str[index++]="1";
break;
case 2:
temp='1';
str[index++]="0";
break;
case 3:
temp='1';
str[index++]="1";
break;
}
}
while(index<lon.length()){
String temp_s=String.valueOf(temp);
String lon_char_s=String.valueOf(lon_char[lon.length()-index-1]);
switch(Integer.parseInt(temp_s)+Integer.parseInt(lon_char_s))
{ case 0:
temp='0';
str[index++]="0";
break;
case 1:
temp='0';
str[index++]="1";
break;
case 2:
temp='1';
str[index++]="0";
break;
}
}
if(temp=='1'){
str[lon.length()]="1";
final_length=lon.length();
}
for(int k=final_length;k>=0;k--){
addBinary_str+=str[k];
}
return addBinary_str;
}
}
/********************************
* 本文來自部落格 “李博Garvin“
* 轉載請標明出處:http://blog.csdn.net/buptgshengod
******************************************/
相關文章
- Mysql從零單排-1MySql
- 從零單排學Redis【黃金】Redis
- 從零單排學Redis【白銀】Redis
- 從零單排學Redis【鉑金一】Redis
- 從零單排學Redis【鉑金二】Redis
- SpringBoot從零單排 ------初級入門篇Spring Boot
- 【3y】從零單排學Redis【青銅】Redis
- 「從零單排canal 03」 canal原始碼分析大綱原始碼
- 「從零單排canal 05」 server模組原始碼解析Server原始碼
- 「從零單排canal 07」 parser模組原始碼解析原始碼
- 從零單排,使用 Netty 構建 IM 聊天室~Netty
- 「從零單排canal 06」 instance模組原始碼解析原始碼
- Laravel 從零單排系列教程 01 :Homestead 環境搭建Laravel
- 三分鐘從零單排js靜態檢查JS
- Spring AOP從零單排-織入時期原始碼分析Spring原始碼
- 「從零單排canal 04」 啟動模組deployer原始碼解析原始碼
- 「從零單排HBase 10」HBase叢集多租戶實踐
- 從零開始單排學設計模式「策略模式」黑鐵 II設計模式
- 從零開始單排學設計模式「UML類圖」定級賽設計模式
- 最新【從零單排】系列流出,教你如何實現字典儲存結構
- 從零開始單排學設計模式「裝飾模式」黑鐵 I設計模式
- 從零開始實現簡單 RPC 框架 3:配置匯流排 URLRPC框架
- leetcode 283. 移動零(簡單)LeetCode
- 從零開始單排學設計模式「簡單工廠設計模式」黑鐵 III設計模式
- 從零單排Java 8(3) —— List結合Lambdas對排序的高階用法Java排序
- 「從零單排canal 01」 canal 10分鐘入門(基於1.1.4版本)
- 從零打卡leetcode之day 1--兩數之和LeetCode
- 從零打卡leetcode之day 2---兩數相加LeetCode
- 「從零單排canal 02」canal叢集版 + admin控制檯 最新搭建姿勢(基於1.1.4版本)
- LeetCode 621 任務排程器LeetCode
- LeetCode:移動零(java)LeetCodeJava
- 從零開始入門 K8s | 排程器的排程流程和演算法介紹K8S演算法
- leetcode_283. 移動零LeetCode
- Leetcode 322 零錢兌換LeetCode
- 從零打卡leetcode之day 4--無重複最長字串LeetCode字串
- 從零開始的簡單光線追蹤示例
- 從零開始入門 K8s | 有狀態應用編排 - StatefulSetK8S
- 拿什麼拯救你,我的offer!(從零打卡刷leetcode,No.004)LeetCode
- 2020/11/17·Leetcode·移動零LeetCode