作为程序员,我经常需要能够知道 通常,如何计算一组的排列数 用于估计目的。
指定允许的方式有很多种 组合,取决于手头的问题。例如, 给定字母A,B,C,D
假设一个4位数的结果,这些字母可以有多少种方式 安排?
如果你有1,2,3或4位数,那么有多少种方式怎么办?
如果您最多只允许使用一次字母,该怎么办? 两次?
如果您必须避免出现两次相同的字母,该怎么办? 一行,但如果它们不在一排,那么两次是否可以?
等。我相信还有更多。
有没有人知道谈论的网络参考或书籍 这个主题是非数学家可以理解的吗?
谢谢!
答案 0 :(得分:3)
假设一个4位数的结果,有多少 这些信件可以安排哪些方式?
当选择第一个数字时,你有4个选择,即A,B,C和D之一;因为允许重复,所以在选择第2,第3,第4时是相同的:
所以你总共有4*4*4*4 = 256
个选项。
如果您有1,2,3或4,该怎么办? 数字,然后有多少种方式?
很容易从问题1中推断出来。
如果您只被允许使用该怎么办? 每个字母最多一次?
当选择第一个数字时,你有4个选择,即A,B,c和D之一;在选择第二个时,你有3个选择,除了你选择的第一个;第3次选择2次,第4次选择1次。
所以你总共选择了4 * 3 * 2 * 1 = 24
。
这里涉及的知识包括组合,排列和概率。理解他们的不同之处是tutorial。
答案 1 :(得分:2)
首先,您要谈的主题是
我建议Math Tutor DVD教授自己的数学主题。 “概率和统计”磁盘集将为您提供解决问题所需的公式和技能。这很棒,因为这是你回到学校最接近的事情,因为老师会为你解决白板上的问题。
我在视频的Combinations章节找到了一个视频片段,供您查看。
答案 2 :(得分:1)
如果您需要做的不仅仅是计算组合和排列的数量,如果您确实需要生成序列,那么Donald Knuth的书籍Generating all combinations and partitions和Generating all tuples and permutations。他详细介绍了受各种限制的算法,并针对每个问题研究了不同解决方案的优缺点。
答案 3 :(得分:0)