01、全排列概念
问题 : 什么是全排列?
答案 : 从 n 个不同元素中任取 m(m≤n) 个元素,按照一定的顺序排列起来,叫做从 n 个不同元素中取出 m 个元素的一个排列。当 m=n 时所有的排列情况叫全排列。
比如 [1,2,3] 全排列共有 6 种 :
02、全排列题目
03、题解分析
假如我们不是做算法题,而是做数学题。我们会一个位置一个位置的来考虑,先写出以 1 开头的排列,再写出以 2 开头的排列,最后写出以 3 开头的排列。
也就是说 :
- 我们先选择 1,然后为 1 的第二位选择 2,此时 1 的 第三位只能选择 3。
- 然后完成了上面的步骤,我们需要回退到 1,因为只有 1 这里还存在别的选择 1−3,然后填写 1−3 后,只有 1−3−2 一种选择。
- 此时我们需要从 1−3−2,回退到 1−3,再回退到 1,再回退到 根节点,然后重新选择 2。
4、同理。
我感觉 我被