0

在 Java 中,我正在开发用于玩文字的争夺游戏。

如果 player1 发送像"B,A,C,N,R,E"这样的字母,那么 player1 不应再发送相同的字母集(顺序无关紧要),例如"A,B,C,N,R,E", “B、A、N、C、E、R”等。

无论如何要在不特定于字母序列的字符串中找到给定的字母集?

4

2 回答 2

3

对应player1,可以对他发送的序列进行排序和存储。下次他选择一个序列时,对其进行排序并检查地图

于 2013-03-29T06:34:59.067 回答
1

1)按照前面所说的对字母进行排序。复杂度 O(n log n)。

2) 用计数器实现某种数组,其中字母表中符号的序号将是掩码数组中的索引。并使用这个掩码数组来匹配单词。就像那个 Integer[] maskArray = [0(for A),0(for B),0(for C),etc.] 复杂度 O(n)。

于 2013-03-29T06:44:00.363 回答