首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改9个字符长字符串中可用于更改的特定字符N(6)中的3个位置的可能组合数

更改9个字符长字符串中可用于更改的特定字符N(6)中的3个位置的可能组合数
EN

Stack Overflow用户
提问于 2021-08-13 08:20:17
回答 1查看 48关注 0票数 0

假设我们有一个字符串a0d2bj5ew

我们希望通过更改字符串中的3 places来找到所有可能的组合。

因此,它可以是a0[d]2bj[5]e[w]a0[d][2][b]j5ew,还有更多。

我们想要用于更改的字符集也是已知的,例如,在本例中它可以是012abc。所以这组字符的N6

通过改变3个位置来查看所有的组合,我们也同时做了一两个位置的工作,所以它也可以是a0[d]2bj[5]ewa0[d]2bj5ew

那么,通过使用上述准则,计算所有组合的总N的公式是什么。

a0d2bj5ew字符串具有9字符。

我们改变3所有可能的地方。

我们使用012abc作为我们的字符集,这些地方将被修改,所以N6

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-13 08:30:17

我们可以通过C(9,3)方式(C(M,K)或nCr (组合号))从9 (M)位中选择3 (K)个位置。

然后我们必须将6 (N)个可能的字符放到这3 (K)个位置上。有6^3 (N^K)方式,如果我们可以使用重复(所以我们可以得到a2a),或A(6,3)方式,如果没有重复是可能的(排列的数量,组合的顺序是重要的,所以a2b不同于2ab)

结果:

代码语言:javascript
复制
C(M,K) * N^K = M! / (K!(M-K)!) * N^K

代码语言:javascript
复制
C(M,K) * A(N,K) = M!/(K!(M-K)!) * N!/(N-K)! 

这些公式不考虑替换炭与旧的相同的情况

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68769018

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档