我一写了一个算法。像这种题训练的逻辑思维,尽量用最基本的算法,练练自己的逻辑思维能力。
package com.itheima.array;
import java.util.Scanner;
public class peo {
private static int count = 0;
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入要编码的字符串");
Scanner input = new Scanner(System.in);
String s1 = input.next().trim();
//为输入的的字符串加上一个空格最为标记。
String s=s1+" ";
//记录转码后的字符串。
String afterS = "";
for (int j = 0, h = 1; h < s.length(); j++, h++) {
if (s.substring(j, h).endsWith(s.substring(h, h + 1))) {
count++;
} else if(count!=0) {
afterS = afterS + (count+1) + s.substring(j, h);
count=0;
}else{
afterS=afterS+s.substring(j,j+1);
System.out.println("哈");
}
}
System.out.println(afterS);
}
} |