String str2 = "aabbbbbcccccddaadbaaaa"; String str = "aabbcddd";
不超过2个的字符不压缩,超过2个的才进行压缩:
- public class C {
-
- public static String getString(String str) {
-
- int n = str.length();
- StringBuilder sb = new StringBuilder();
- int count = 0;
- int j = 0;
- int i = 0;
- for(;i
- char c = str.charAt(i);
- count = 0;
- j = i + 1;
- while(j
- if(str.charAt(j)==c) {
- count++;
- }
- else {
- break;
- }
- j++;
- }
- if(count==0) {
- sb.append(c);
- }
- else if(count==1) {
- sb.append(c);
- sb.append(c);
- }
- else if(count>=2) {
- sb.append(c);
- sb.append((count+1)+"");
- }
- }
-
- return sb.toString();
- }
-
- public static void main(String[] args) {
- String str2 = "aabbbbbcccccddaadbaaaa";
- String str = "aabbcddd";
- System.out.println(getString(str2));
- }
- }
// 输出:
- aab5c5ddaadba4
- aabbcd3
-
相关阅读:
查看当前cmake版本支持哪些版本的Visual Studio
8、IOC 之容器扩展点
【C++】哈希的应用 —— 布隆过滤器
Oracle如何插入图片数据?
冥想第六百一十一天
1. js中let、var、const定义变量区别与方式
数据库表字段以表格形式写入Word
架构解析:Dubbo3 应用级服务发现如何应对双11百万集群实例
Dubbo源码(四) - 服务引用(消费者)
flink-cdc实时增量同步mysql数据到hbase
-
原文地址:https://blog.csdn.net/IRON_MAN_LEVEL1/article/details/134320988