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

邢台网站设计哪家专业色块网站

邢台网站设计哪家专业,色块网站,网络营销seo优化,wordpress商城移动端目录 1. 题目:2. 我的代码:小结: 1. 题目: 给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。 示例 1: 输入:nums [1,1,2] 输出: [[1,1,2], [1,2,1], [2,1…

目录

  • 1. 题目:
  • 2. 我的代码:
  • 小结:

1. 题目:

在这里插入图片描述

给定一个可包含重复数字的序列 nums ,按任意顺序 返回所有不重复的全排列。

示例 1:

输入:nums = [1,1,2]
输出:
[[1,1,2],
[1,2,1],
[2,1,1]]

示例 2:

输入:nums = [1,2,3]
输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]

2. 我的代码:

class Solution:def permuteUnique(self, nums: List[int]) -> List[List[int]]:# 回溯path = []result = []def backtracking(rest):# 终止条件if rest == []:result.append(path[:])# 对再次出现在该位置的数字做剪枝dic = set()for i in range(len(rest)):if rest[i] in dic: continue # 剪枝dic.add(rest[i])path.append(rest[i])backtracking(rest[:i] + rest[i + 1:])path.pop()backtracking(nums)return result

这个题继续使用回溯算法,只不过要配合剪枝操作。在每一层定义一个set作为遍历过的元素的记录,如果不在记录中则可以递归,如果在记录中则直接剪枝,continue

为什么要剪枝呢,因为如果相同元素在次位置再递归一次,则会产生和之前递归过的一模一样的分支。继续将遍历完整个列表作为终止条件即可。

以树形结构展示为下图:

在这里插入图片描述

小结:

关注我给大家分享更多有趣的知识,以下是个人公众号,提供 ||代码兼职|| ||代码问题求解||
添加我的公众号即可:

http://www.yayakq.cn/news/329843/

相关文章:

  • 装修效果图软件app哪个好网站优化建设工作总结范文
  • 做影视网站代理犯法吗微信小程序ppt模板
  • 网络推广网站程序个人淘客网站备案
  • asp网站 手机登录wordpress 自动发货
  • 网站建设做网站wordpress主题文章列表
  • 网站单页发布网络架构有几层
  • 建外贸网站的南京网站建设 w
  • 马云做网站最早营销模式100个经典案例
  • 承德网站软件技术专升本对口专业
  • 做代刷主站网站找人做网站网站
  • 廊坊网站建设维护昭通网站建设 hardlcp
  • 负面信息网站长沙债务优化公司
  • 网站开发加33865401qq的seo综合查询
  • 企业网站建设与管理作业怎么打广告吸引客户
  • 电商网站制作专门做旅游的网站
  • 商家线上推广的平台都有哪些模板网站有利于做seo吗
  • 广东购物网站建设报价做网站 然后百度推广
  • 个人免费推广网站找人做网站需求怎么写
  • 兰州做网站客户辽宁建设工程信息网为什么打不开
  • 花垣做网站怎么制作公众号模板
  • 论坛网站开发的意义网站建设会计分录怎么写
  • 有电脑网站怎么做手机网站金蝶财务软件一般多少钱
  • 网页设计个人网站心得体会免费发布信息的平台
  • 企业网站优化17电影网页设计模板图片
  • 做网站的公司合肥苏州网站设计公司济南兴田德润厉害吗
  • wordpress 食谱网站炫酷的网站
  • 网站整体建设方案设计服务网站运营方案
  • 专业做网站的公司有门户网站html模板下载
  • 如何在局域网内做网站郑州今天最新消息新闻
  • 购物网站及app开发温州网论坛