用java 编写程序求最大连续递增的有序子串(求解)
编写一个程序,提示用户输入一个字符串,然后显示最大连续递增的有序子串:比如
输入:welcome 回车
结果:wel
------解决方案--------------------
public class Test {
public static void main(String args[]){
String s="abcdgffdsfabcdefgdfgdf";
System.out.println(getLengthchar(s));
}
public static String getLengthchar(String s){
String str1="";
String str2="";
for(int i=0;i<s.length();i++){
if(str1.equals("")){
str1+=s.charAt(i);
}
if(i+1==s.length()){ //字符比较到了末尾,跳出循环
break;
}
if((s.charAt(i)+1)==s.charAt(i+1)){//比较该字符和它的下一个字符是否为递增
str1+=s.charAt(i+1);
}else{ //当前字符和它的下一个字符不是递增关系
if(str1.length()>str2.length()){ //如果之前的字符长度比现在的短,则把现在的字符赋给之前的变量
str2=str1;
}
str1=""; //清空当前的变量
}
}
return str2;
}
}