力扣: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]))
相关推荐
阿正的梦工坊2 小时前
深入理解 PyTorch 中的 unsqueeze 操作
人工智能·pytorch·python
FreakStudio2 小时前
硬件版【Cursor】?aily blockly IDE尝鲜封神,实战硬伤尽显
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
澈2073 小时前
C++并查集:高效解决连通性问题
java·c++·算法
测试员周周4 小时前
【Appium 系列】第06节-页面对象实现 — LoginPage 实战
开发语言·前端·人工智能·python·功能测试·appium·测试用例
旖-旎4 小时前
深搜练习(单词搜索)(12)
c++·算法·深度优先·力扣
2301_783848655 小时前
优化文本分类中堆叠模型的网格搜索性能:避免训练卡顿的实战指南
jvm·数据库·python
企客宝CRM5 小时前
2026年中小企业CRM选型指南:企客宝CRM处于什么位置?
android·算法·企业微信·rxjava·crm
橙淮5 小时前
二叉树核心概念与Java实现详解
数据结构·算法
CLX05055 小时前
如何安装Oracle 12c Cloud Control_OMS服务端组件与Agent部署
jvm·数据库·python
米罗篮6 小时前
DSU并查集 & 拓展欧几里得-逆元
c++·经验分享·笔记·算法·青少年编程