J'ai besoin de trouver les combinaisons de mots dans une chaîne séparée par des espaces. Supposons que la chaîne est "je vais", la sortie sera -Toutes Combinaisons de sous-chaînes dans une phrase en Java
- oui, je, aller
- I, vais
- je, vais
chaîne peut être plus . J'ai essayé mais bloqué. Voulez-vous s'il vous plaît m'aider à résoudre le problème. Merci d'avance.
public class Combination_Of_Words_In_Sentence {
public static void main(String[] args) {
String inputString = "I will go";
String[] arrString = inputString.split(" ");
printString(arrString);
}
private static void printString(String[] arrString) {
int len = arrString.length;
String[] arr = new String[len];
for(int i=0;i<arrString.length;i++){
for(int j=0;j<i+1;j++){
arr[i] = arrString[j]+" ";
System.out.println();
}
arr[i] +=",";
printPatternUtil(arrString, arr, 1, 1, len);
}
}
private static void printPatternUtil(String[] arrString, String[] arr,
int i, int j, int n) {
if(i == n){
// arr[j] = " ";
for(int k=0;k<arr.length;k++)
System.out.print(arr[k]);
System.out.println();
return;
}
arr[j] = arrString[i]+",";
printPatternUtil(arrString, arr, i+1, j+1, n) ;
// Or put a space followed by next character
// arr[j] = ",";
//arr[j+1] = arrString[i]+ " ";
// printPatternUtil(arrString, arr, i+1, j+2, n);
}
}
Il est pas clair ce que vous voulez. vous devez mettre des virgules dans différentes positions? –
Salut Luca, Merci d'avoir répondu. J'ai besoin de la liste de String. List1 -> [I, will, go], List2 -> [I, ira] List3 -> [Je vais, allez] – Sudip
Oui .. Cela va aussi bien. – Sudip