leetcode刷題 字串 二進位制求和

2021-10-12 10:18:51 字數 763 閱讀 6191

給你兩個二進位制字串,返回它們的和(用二進位制表示)。

輸入為 非空 字串且只包含數字 1 和 0。

示例 1:

輸入: a = 「11」, b = 「1」

輸出: 「100」

示例 2:

輸入: a = 「1010」, b = 「1011」

輸出: 「10101」

每個字串僅由字元 '0' 或 '1' 組成。

1 <= a.length, b.length <= 10^4

字串如果不是 "0" ,就都不含前導零。

class

solution

// 如果 a 還沒遍歷完成(a串比b串長),則繼續遍歷新增 a 的剩餘部分

while

(i >=0)

// 如果 b 還沒遍歷完成(b串比a串長),則繼續遍歷新增 b 的剩餘部分

while

(j >=0)

//如果 carry 不等於0 還有個進製數沒加進去,需要補充

if(carry ==1)

//反轉字串獲得正常結果

return builder.

reverse()

.tostring()

;}

這裡需要理解的是利用到了1的ascii碼比0恰好大1,通過這個我們可以直接將數值填入sum中,此外最後需要反轉是因為我們填入stringbuilder是由低位計算逐步填入的,最後得到的結果是高位打頭的,所以需要反轉。

leetcode刷題 字串

給定兩個字串 s 和 t 編寫乙個函式來判斷 t 是否是 s 的字母異位詞。示例 1 輸入 s anagram t nagaram 輸出 true 示例 2 輸入 s rat t car 輸出 false 說明 你可以假設字串只包含小寫字母。高階 如果輸入字串包含 unicode 字元怎麼辦?你能否...

leetcode刷題 字串 反轉字串

給定乙個字串 s 和乙個整數 k,你需要對從字串開頭算起的每隔 2k 個字元的前 k 個字元進行反轉。如果剩餘字元少於 k 個,則將剩餘字元全部反轉。如果剩餘字元小於 2k 但大於或等於 k 個,則反轉前 k 個字元,其餘字元保持原樣。示例 輸入 s abcdefg k 2 輸出 bacdfeg 該...

LeetCode刷題 字串陣列之間轉換

給你乙個僅由數字 6 和 9 組成的正整數 num。你最多只能翻轉一位數字,將 6 變成 9,或者把 9 變成 6 請返回你可以得到的最大數字。示例 1 輸入 num 9669 輸出 9969 解釋 改變第一位數字可以得到 6669 改變第二位數字可以得到 9969 改變第三位數字可以得到 9699...