递归方式实现求字符串中相同字符连续出现的最大值,如aaabbcc,连续出现a的最大值为3,abbc,连续出现字符最大的值为2。
思路:显然使用迭代可以轻松解决,只是为了考察对递归的理解做要求。
Java递归实现:
import java.util.Scanner;
class Test{
private static int max=0;
private static int tmp_m=1;
public static void max(String s,int i){
if(i>s.length()-1){
max=max>tmp_m?max:tmp_m;
return;
}
if(s.charAt(i)==s.charAt(i-1)){
tmp_m++;
}else{
max=max>tmp_m?max:tmp_m;
//System.out.println("当前"+s.charAt(i-1)+"连续数为:"+tmp_m);
tmp_m=1;
}
max(s,i+1);
}
public static void main(String[] args){
Scann