字串壓縮。利用字元重複出現的次數,編寫一種方法,實現基本的字串壓縮功能。比如,字串aabcccccaaa會變為a2b1c5a3。若「壓縮」後的字串沒有變短,則返回原先的字串。你可以假設字串中只包含大小寫英文本母(a至z)。
示例1
: 輸入:"aabcccccaaa"
輸出:"a2b1c5a3"
示例2:
輸入:"abbccd"
輸出:"abbccd"
解釋:"abbccd"壓縮後為"a1b2c2d1",比原字串長度更長。
字串長度在[0,
50000
]範圍內。
基本思路是遍歷字串比較相鄰字元是否相等,具體**如下
class
solution
stringbuilder sb =
newstringbuilder()
;int count =1;
for(
int i=
0;ilength()
-1;i++
)else
} sb.
(s.charat
(s.length()
-1))
.(count)
;return sb.
length()
>s.
length()
?s:sb.
tostring()
;}}
leetcode解題之同構字串
給定兩個字串 s 和 t,判斷它們是否是同構的。如果 s 中的字元可以被替換得到 t 那麼這兩個字串是同構的。所有出現的字元都必須用另乙個字元替換,同時保留字元的順序。兩個字元不能對映到同乙個字元上,但字元可以對映自己本身。示例 1 輸入 s egg t add 輸出 true 示例 2 輸入 s ...
leetcode解題之反轉字串中的母音字母
編寫乙個函式,以字串作為輸入,反轉該字串中的母音字母。示例 1 輸入 hello 輸出 holle 示例 2 輸入 leetcode 輸出 leotcede 說明 注 母音字母不包含字母 y 先寫自己的思路 首先先遍歷字串找到字串中的母音字母並倒序排列,然後再次遍歷將遇到的母音字母替換為找到的母音 ...
LeetCode 字串 反轉字串
反轉字串 編寫乙個函式,其作用是將輸入的字串反轉過來。輸入字串以字元陣列char的形式給出。不要給另外的陣列分配額外的空間,你必須原地修改輸入陣列 使用 o 1 的額外空間解決這一問題。你可以假設陣列中的所有字元都是 ascii 碼表中的可列印字元。示例 1 輸入 h e l l o 輸出 o l ...