Advertisement

逆康拓

阅读量:

康拓展开所依赖的核心理论基础,可以追溯至如下数学表达式:

【其中an表示在当前尚未出现的元素中,序列的第i位所处的位置顺序

以LeetCode60. 第k个排列为例:

对于集合 [1,2,3,…,n],其所有元素的排列总数为 n! 种。

按照从大到小的顺序列出所有可能的排列,并依次进行编号。当 n = 3 时,所有的排列情况如下所示:

"123"
"132"
"213"
"231"
"312"
"321"
已知 n 和 k 的值,要求返回第 k 个排列。

说明如下:

n 的取值范围为 [1, 9]。
k 的取值范围为 [1, n!]。

示例 1:

输入: n = 3, k = 3
输出: "213"

示例 2:

输入: n = 4, k = 9
输出: "2314"

代码:

复制代码
 class Solution {

全部评论 (0)

还没有任何评论哟~