当前位置: 首页 > news >正文

机试刷题_字符串的排列【python】

题目:字符串的排列

在这里插入图片描述

from os import dup
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
# 
# @param str string字符串 
# @return string字符串一维数组
#
class Solution:def backtrack(self,res,state,choices,selected):# 当状态长度等于元素数量时,记录解if len(state)==len(choices):res.append(state)returndupilcate = set()for i in range(len(choices)):# 剪枝:不允许重复选择元素,且不允许重复选择相等元素if not selected[i] and choices[i] not in dupilcate:#记录选择过的值dupilcate.add(choices[i])selected[i] = Truestate  += choices[i]# 进行下一轮选择self.backtrack(res,state,choices,selected)# 回退:撤销选择,恢复到之前的状态selected[i] = Falsestate = state[:-1]def Permutation(self , str: str) -> List[str]:res = []if len(str)==0:return restmp = "".join(sorted(list(str)))self.backtrack(res,state ="",choices = tmp,selected=[False]*len(tmp))return res
http://www.lryc.cn/news/537906.html

相关文章:

  • 百度智能云—千帆 ModelBuilder API的简单调用(Java)
  • unity学习43:子状态机 sub-state machine
  • Qt MainWindow
  • GDB QUICK REFERENCE (GDB 快速参考手册)
  • 【数据结构】 栈和队列
  • AI视频创作教程:如何用AI让古画动起来。
  • 撕碎QT面具(1):Tab Widget转到某个Tab页
  • DeepSeek24小时写作机器人,持续创作高质量文案
  • npm安装依赖(npm install)时遇到认证错误的解决方案
  • SpringBoot+微信小程序+数据可视化的宠物到家喂宠服务(程序+论文+讲解+安装+调试+售后等)
  • 免费大模型网站
  • OpenCV的主要模块
  • 使用 Python 爬虫和 FFmpeg 爬取 B 站高清视频
  • Retrieval-Augmented Generation for LargeLanguage Models: A Survey
  • 2025年2月16日(numpy-deepseek)
  • C#windows窗体人脸识别
  • 【第11章:生成式AI与创意应用—11.1 文本生成与创意写作辅助的实现与优化】
  • 【Elasticsearch】通过运行时字段在查询阶段动态覆盖索引字段
  • 电解电容的参数指标
  • linux 内核编译报错 unknown assembler invoked
  • HTML,API,RestFul API基础
  • js 使用缓存判断在规定时间内显示一次弹框
  • 使用新版本golang项目中goyacc依赖问题的处理
  • 洛谷 P2574 XOR的艺术/CF242E XOR on Segment 题解
  • 包管理器-汇总介绍
  • mysql系列8—Innodb的undolog
  • 静默安装OGG for MySQL微服务版本,高效开展数据同步和迁移
  • 【Golang 面试题】每日 3 题(五十五)
  • PHP关键字入门指南:分类与功能全解析
  • 消息中间件深度剖析:以 RabbitMQ 和 Kafka 为核心