題目描述:給定兩個二進位制字串,返回他們的和(用二進位制表示)。
輸入為非空字串且只包含數字 1 和 0。
示例 1:
輸入: a = 「11」, b = 「1」示例 2:輸出: 「100」
輸入: a = 「1010」, b = 「1011」本題實現的就是乙個經典的二進位制加法器輸出: 「10101」
源**:
package pid67;
public
class
solution
else
if(a.
charat
(p)==
'0')
p--;}
else
}int
addend2 =
newint
[length]
;int q = lengthb-1;
for(
int i=length-
1;i>=
0;i--
)else
if(b.
charat
(q)==
'0')
q--;}
else
}int
result =
newint
[length];/*
* 兩二進位制數對齊相加
*/int carry =0;
//記錄低位向高位的進製
int curr;
for(
int i=length-
1;i>=
0;i--
)else
if(curr ==2)
else
}//將result陣列轉成字串
string res =
newstring()
;if(result[0]
==0)}
else
if(result[0]
==1)}
return res;
}public
static
void
main
(string[
] args)
}
效能表現良好:
LeetCode67題 二進位制求和
67.二進位制求和 class solution def addbinary self,a str,b str str if a 0 and b 0 return 0 else x 0for i in range 1,len a 1 x int a i pow 2,i 1 for i in rang...
二進位制求和(力扣第67題)
題目 給你兩個二進位制字串,返回它們的和 用二進位制表示 輸入為非空字串且只包含數字1和0。示例1 輸入 a 11 b 1 輸出 100 示例2 輸入 a 1010 b 1011 輸出 10101 分析 其實就是兩個二進位制數的加法運算,兩個二進位制數相加,首先設定乙個進製識別符號flag,初始值設...
二進位制求和(力扣第67題)
題目 給你兩個二進位制字串,返回它們的和 用二進位制表示 輸入為非空字串且只包含數字1和0。示例1 輸入 a 11 b 1 輸出 100 示例2 輸入 a 1010 b 1011 輸出 10101 分析 其實就是兩個二進位制數的加法運算,兩個二進位制數相加,首先設定乙個進製識別符號flag,初始值設...