У меня есть массив строк
{"ted", "williams", "golden", "voice", "radio"}
, и мне нужны все возможные комбинации этих ключевых слов в следующей форме:
{"ted",
"williams",
"golden",
"voice",
"radio",
"ted williams",
"ted golden",
"ted voice",
"ted radio",
"williams golden",
"williams voice",
"williams radio",
"golden voice",
"golden radio",
"voice radio",
"ted williams golden",
"ted williams voice",
"ted williams radio",
.... }
Я часами работал без эффективного результата (побочный эффект высокоуровневого программирования ??).
Я знаю, что решение должно быть очевидным, но я застрял, честно! Решения на Java / C # принимаются.
РЕДАКТИРОВАТЬ :
EDIT 2 : после просмотра ссылки в ответе выясняется, что пользователи Guava могут использовать метод powerset в com.google.common.collect.Sets