Originariamente inviato da tigerjack89
yez il concetto l'ho capito. Il fatto è che mi riesce proprio difficile pensare in maniera ricorsiva
Allora definisci prima la soluzione iterativa, e quindi ottieni quella ricorsiva.
Originariamente inviato da tigerjack89
Una domanda su questo punto: perchè incrementi anche toIndex? Non si dovrebbe incrementare solo startIndex???
In effetti puoi utilizzare anche un solo indice:
codice:
public int indexOf(String str, String sub){
if ( sub.length() > str.length() )
return -1;
return indexOf(str, sub, 0);
}
private int indexOf(String str, String sub, int i){
if( i+sub.length() > str.length() )
return -1;
if( sub.equals( str.substring(i, i+sub.length()) ) )
return i;
return indexOf(str, sub, i+1);
}