Ideally, you'd want to show what you've tried so far. That being said, the requirement you wrote is essentially as follows:
- take a sentence and break it into each of its words
- generate a tuple of answers made up of a combination of each word and/or the first k letters of each word.
In fact, when you write Paul Thomas Anderson
, you're handling the special case where k = length(word)
.
Your answer is probably not going to be specific to Java and I think you might be better served in the software engineering Stack Exchange or the Programming Stack Exchange sites.
Start with something along the lines of:
List<List<String>>() result = new ArrayList<List<String>>();
String[] words = seed.split(" "); // this will give you each word
for (String word : words){
for (int i = 1; i < word.length(); i++){
String part = word.substring(0,i); // make sure length-1 is actually the right max
// Do the saving here - you need a good structure - not sure my List of List cuts it
}
}
Actually you should refer to this post for the cartesian product of your sets. This will simplify greatly what you need to do.