从数组的尾部开始找到第一个非递增的,然后把该数后面的进行翻转.再找到第一个比它大的,交换它们的位置,即为下一个排列.通过它可以找到全排列(无论包不包含重复元素)
还可以采用交换元素的方式,不需要额外的内存空间.或者迭代的方法.
全排列 输入一个数n,输出1-n的全排列,这里我们将其形象化,举个例子,加入有编号1,2,3的3张扑克牌分别放在3个盒子里面,并且每个盒子有且只能放一张扑克牌.那么一共有多少种放法呢? 好,第一... 来自: qq_40421919的博客