三个不同元素的所有可能顺序:共有 3! = 6 种排列方式,从123到321,一次看懂。
全排列是指从给定个数的元素中取出所有元素进行排序。对于数字1、2、3(三个不同元素),全排列就是所有可能的顺序组合,一共 3! = 6 种结果。
在数学与计算机科学中,全排列是排列组合的基础,也是算法入门(回溯、递归)的经典案例。3的全排列虽然简单,但清晰展示了“有序排列”的核心思想。
+
3! = 6 种
3! = 3 × 2 × 1 = 6 。第一个位置有3种选择,第二个位置有2种,第三个位置仅剩1种,相乘即得。
一般地,n个不同元素全排列数为 n! (n的阶乘)。
可以使用回溯法、递归交换、字典序等算法生成。3的全排列常用于教学演示递归树。
例如:固定第一位,对剩余两位全排列;或使用“交换-递归-回溯”模式。
def permute(nums):
if len(nums)==0: return [[]]
res = []
for i in range(len(nums)):
rest = nums[:i]+nums[i+1:]
for p in permute(rest):
res.append([nums[i]]+p)
return respermute([1,2,3]) 即可获得6种排列。
从n个不同元素中取m个(m≤n)的排列数:
A(n,m) = n! / (n-m)! 。当m=n时即为全排列 n! 。
3的全排列对应 A(3,3)=3!/(0!)=6 。0! 定义为1。
* 示意图均为主题相关(1.png占位)