题目:
给出集合
[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
相关推荐
Cosmoshhhyyy32 分钟前
LeetCode:3297. 统计重新排列后包含另一个字符串的子字符串数目 I(滑动窗口 Java)太阳照常升起3661 小时前
机试准备第一天Non importa1 小时前
【初阶数据结构】线性表之单链表游客5201 小时前
设计模式-结构型-桥接模式Pandaconda1 小时前
【新人系列】Python 入门(二十五):Socket 网络编程fanstuck1 小时前
如何快速准备数学建模?风_流沙1 小时前
【python基础】python中copy用法Static_Xiao1 小时前
C语言导航 7.1函数的概念与定义萌の鱼1 小时前
leetcode 53. 最大子数组和水水阿水水1 小时前
第二章:面向对象之封装(一)