java实现rle编码_java – RLE压缩

我有一个RLE压缩算法的以下

java代码:

public static String compress (String original) {

String compressed = "";

char letter = 0;

int count = 1;

for (int i = 0; i < original.length(); i++) {

if (letter == original.charAt(i)) {

count = count + 1;

}

else {

compressed = compressed + letter;

if(count != 1) {

compressed = compressed + count;

}

letter = original.charAt(i);

count = 1;

}

}

compressed = compressed + letter;

if(count != 1) {

compressed = compressed + count;

}

return compressed;

}

如果输入是aaaawwwweerrr

输出应为:3a4w2e3r

实际输出为:a3w4e2r3

我试过切换

compressed = compressed + count

compressed = count + compressed

但是当我这样做时,输出是:244 awer3

我应该如何修改代码以使输出符合适当的顺序?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值