力扣:60. 排列序列(Python3)

题目:

给出集合 [1,2,3,...,n],其所有元素共有 n! 种排列。

按大小顺序列出所有排列情况,并一一标记,当 n = 3 时, 所有排列如下:

  1. "123"
  2. "132"
  3. "213"
  4. "231"
  5. "312"
  6. "321"

给定 nk,返回第 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分隔开再拼接成一个字符串。

代码:

python 复制代码
from 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]))
相关推荐
WXG1011几秒前
【Flask-10】modbus tcp通信
python·tcp/ip·flask
慕容青峰1 分钟前
【加拿大计算机竞赛 CCO 小行星采矿】题解
c++·算法·sublime text
540_5402 分钟前
ADVANCE Day31
人工智能·python·机器学习
Ghost-Silver5 分钟前
2025年度总结
开发语言·数据结构·c++·算法
The star"'6 分钟前
Python
开发语言·python·pygame
luoluoal7 分钟前
基于python的文件销毁工具(源码+文档)
python·mysql·django·毕业设计·源码
量化风云12 分钟前
2026量化新基建(二) - sqlite 与 sqlite-utils
数据库·python·sqlite·量化交易·量化交易课程
POLITE313 分钟前
Leetcode 54.螺旋矩阵 JavaScript (Day 8)
javascript·leetcode·矩阵
yuhaiqun198924 分钟前
发现前端性能瓶颈的巧妙方法:建立“现象归因→分析定位→优化验证”的闭环思维
前端·经验分享·笔记·python·学习·课程设计·学习方法
谈笑也风生25 分钟前
经典算法题型之排序算法(四)
数据结构·算法·排序算法