题目:
给出集合
[1,2,3,...,n],其所有元素共有n!种排列。按大小顺序列出所有排列情况,并一一标记,当
n = 3时, 所有排列如下:
"123""132""213""231""312""321"给定
n和k,返回第k个排列。来源:力扣(LeetCode)
链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
示例:
示例 1:
输入:n = 3, k = 3
输出:"213"
示例 2:
输入:n = 4, k = 9
输出:"2314"
示例 3:
输入:n = 3, k = 1
输出:"123"
解法:
使用itertools库的permutations函数。
知识点:
1.str.join(item )**:**str表示字符串,item表示一个成员,注意括号里必须只能有一个成员。将字符串item中的每个成员以字符str分隔开再拼接成一个字符串。
代码:
pythonfrom itertools import permutations class Solution: def getPermutation(self, n: int, k: int) -> str: return ''.join(map(str, list(permutations([item + 1 for item in range(n)]))[k - 1]))
力扣:60. 排列序列(Python3)
恽劼恒2023-08-12 22:01
相关推荐
飞Link27 分钟前
什么是 AirSim?一文读懂无人机仿真平台曲径海盗1 小时前
【Python 学习第 38 天】for 循环在世修行1 小时前
智学文枢:变式题生成引擎一去不复返的通信er3 小时前
贪心算法-合并区间(LeetCode 56)On The Road :3 小时前
Java 多线程详解:从入门到线程安全岁月宁静3 小时前
如何设计支持 Skills 的 Agent?一套可扩展的四层架构Shaoshing3 小时前
LeetCode100 49. 字母异位词分组岁月宁静4 小时前
CrewAI 快速上手:10 分钟搭建你的第一个 Agent 团队YFJ_mily4 小时前
第二届区块链技术与基础模型国际学术会议(BTFM2027)