5

如果我有两个字符 ( a, b) 和三个 ( aaa, aab ...) 的长度,我如何计算我可以制作多少个唯一字符串(以及数学方法称为什么)?

这个对吗?

val = 1, amountCharacters = 2, length = 3;
for (i = 1; i <= length; ++i) { val = amountCharacters*val; uniqueStrings = val }

此示例返回正确的 8。如果我尝试更高的东西,比如amountCharacters = 10它返回 1000。它仍然正确吗?

4

3 回答 3

8

If you have n different characters and the length is k, there are exactlty nk possible strings you can form. Each character independently of the rest can be one of n different options and there are k total choices to make. Your code is correct.

For 2 possible characters and 10 letters, there are exactly 1024 possible strings.

Hope this helps!

于 2013-10-23T08:38:31.507 回答
1

与基础数学概念相同的规则适用。

所以简短的回答是amountCharacters ^ length

最长的自然答案。

  • 第一个字母将有 X 个可能的值
  • 第二个字母将有 X*X 可能的值
  • 等等 ..
  • X 等于可能值的数量,即问题中的字符数
于 2013-10-23T08:39:52.823 回答
1

如果我正确理解了你的问题,如果你有 N 个字符并且想要构造一个长度为 L 的字符串,那么组合的数量就是 N^L(例如 N 的 L 次方)。

如果对字符串可以包含的内容有不同的限制,例如组合或排列,您可以获得各种其他结果。

于 2013-10-23T08:41:56.253 回答