字符串压缩

题目描述
对字符串进行RLE压缩,将相邻的相同字符,用计数值和字符值来代替。例如:aaabccccccddeee,则可用3a1b6c2d3e来代替。

输入描述:

输入为a-z,A-Z的字符串,且字符串不为空,如aaabccccccddeee

输出描述:

压缩后的字符串,如3a1b6c2d3e

示例1 
import java.io.IOException;
import java.util.LinkedHashMap;
import java.util.Scanner;

public class Main{
    public static void main(String[] args) throws IOException {
        Scanner sc = new Scanner(System.in);
        String str = sc.next();
       
        LinkedHashMap<Character,Integer> map = new LinkedHashMap<>();
        for(char c: str.toCharArray()) {
            map.put(c,map.getOrDefault(c,0)+1);
        }
        final StringBuffer sb = new StringBuffer();
        map.forEach((k,v) -> {
              sb.append(v).append(k);
        });
        System.out.println(sb);


 


        // StringBuilder sb = new StringBuilder();
        // sb.reverse();
    }


}
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 终极编程指南 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读