題目:兩個二進位制數a和b,用string字串表示,要求進行加法運算
解法:
string addbinary(string a, string b)
reverse(ret.begin(),ret.end());//將ret反轉
return ret;
}
在自己寫時,遇到各種型別之間相互轉換的問題,最終選擇的解決方法是放棄相互轉換函式,利用ascii碼進行運算,但是我是直接寫的:
c1=a[i];
if (c1==48)
c1=0;
else if (c1==49)
c1=1;
然後我看到聰明的寫法應該是c1=a[i]-'0'(-_-!!)
另外通過這個我主要了解到,string型別不能直接通過cout輸出......
string c="12345";
cout 一般針對字串使用cstring和char cstring沒有長度限制,但字串以 0 為結束標誌。故要對二進位制字串進行操作,則不能使用cstring,而要用cbytearray和char。關於cstring 1 是actual字串,而不是字串指標,不需要在定義的時候指定長度 2 該類過載了 等運算子... 4646598ce4f12f0f484da18acbd83813.png en resource database 11364 1 1226f6e4e21ed6df41356aa6e9e857c0.png en resource database 11366 1 遇到難度較大的題目的解題步驟 1.找... 題目描述 給定乙個字串 s,計算具有相同數量0和1的非空 連續 子字串的數量,並且這些子字串中的所有0和所有1都是組合在一起的。重複出現的子串要計算它們出現的次數。示例 1 輸入 00110011 輸出 6 解釋 有6個子串具有相同數量的連續1和0 0011 01 1100 10 0011 和 01...字串和二進位制字串問題以及讀寫二進位制檔案
計算二進位制字串
計算二進位制字串