我必须编写一种方法来返回给定字符串中的最小字符(使用ASCII序列)。示例minChar(“ hello”);应该返回“ e”。
目前,我正在尝试运行minChar(“ hello”,0)。我的想法是,它将从h(h
public static char minChar(String x, int z){
char c = '~';
while(z < x.length()){
if(x.charAt(z) < c){
c = x.charAt(z);
}
minChar(x, z+1);
}
return c;
}
最佳答案
您没有使用minChar()
返回的内容。用它。
public static char minChar(String x, int z){
char c = '~';
if(z < x.length()){
if(x.charAt(z) < c){
c = x.charAt(z);
}
char candidate = minChar(x, z+1); // add assignment
if (candidate < c) c = candidate; // add update
}
return c;
}