字串壓縮。利用字元重複出現的次數,編寫一種方法,實現基本的字串壓縮功能。比如,字串aabcccccaaa會變為a2b1c5a3。若「壓縮」後的字串沒有變短,則返回原先的字串。你可以假設字串中只包含大小寫英文本母(a至z)
示例1:輸入:「aabcccccaaa」
輸出:「a2b1c5a3」
示例2:1.第一種方法:雙指標法輸入:「abbccd」
輸出:「abbccd」
解釋:「abbccd"壓縮後為"a1b2c2d1」,比原字串長度更長。
(1)解題思路:
(2)**:
/**
* 解法一 雙指標法
* 新建兩個指標i,j
* 新建乙個stringbuilder sb
* 利用while迴圈,i為下表=標,從0開始遍歷字串s
* 令j=i;
* 判定字串的第j的元素是否與第i個元素是否相等
* 若相等,則j指向下一位
* 否則將s的第i個元素新增到sb中
* 再將j-i 即重複字元的個數新增到sb中,
* 再將i指標指向j,進行下乙個迴圈
* 迴圈結束後,將sb轉換為string型別的字串result
* 比較result和s的長度,返回較短的字串
* 結束
*/public
static string compressstring
(string s)
sb.(s.charat
(i))
; sb.
(j-i)
; i=j;
} string result = sb.
tostring()
;if(result.
length()
length()
)else
}
leetcode面試題 01 06 字串壓縮
字串壓縮。利用字元重複出現的次數,編寫一種方法,實現基本的字串壓縮功能。比如,字串aabcccccaaa會變為a2b1c5a3。若 壓縮 後的字串沒有變短,則返回原先的字串。你可以假設字串中只包含大小寫英文本母 a至z 示例1 輸入 aabcccccaaa 輸出 a2b1c5a3 示例2 輸入 ab...
LeetCode 面試題01 06 字串壓縮
字串壓縮。利用字元重複出現的次數,編寫一種方法,實現基本的字串壓縮功能。比如,字串aabcccccaaa會變為a2b1c5a3。若 壓縮 後的字串沒有變短,則返回原先的字串。你可以假設字串中只包含大小寫英文本母 a至z 示例1 輸入 aabcccccaaa 輸出 a2b1c5a3 示例2 輸入 ab...
LeetCode 面試題 01 06 字串壓縮
字串壓縮。利用字元重複出現的次數,編寫一種方法,實現基本的字串壓縮功能。比如,字串aabcccccaaa會變為a2b1c5a3。若 壓縮 後的字串沒有變短,則返回原先的字串。你可以假設字串中只包含大小寫英文本母 a至z 示例1 輸入 aabcccccaaa 輸出 a2b1c5a3 class sol...