我想要一个像这样工作的算法:
给定一些元素:
A B C D E F
该算法应生成包含这些元素的数组的所有组合:
[A,B,C,D,E,F]
[AB,C,D,E,F]
[ABC,D,E,F]
[A,BC,D,E,F]
[A,B,C,DEF]
[ABCDEF]
无效的组合是(例如):
[AC,B,D,E,F]
[AB,BC,D,E,F]
[BC,DE,FA]
也就是说,元素应该保持有序。
编辑: 我想在英语句子上使用算法来检测复合名词。
例如:
On the table is a water jug.
应该被识别为以下词类的序列。
Pronoun, Determiner, Noun, Verb, Determiner, Noun
但不是
Pronoun, Determiner, Noun, Verb, Determiner, Noun, Noun