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

天元建设集团有限公司是什么性质seo关键词外包公司

天元建设集团有限公司是什么性质,seo关键词外包公司,网站改版建设公司,dw做的网站放文件夹1 问题 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1: 输入:nums [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] 示例 2: 输入&#x…

1 问题

给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。

示例 1:

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

示例 2:

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

示例 3:

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

2 答案

自己写的,回溯算法,得出答案不对

class Solution:def permute(self, nums: List[int]) -> List[List[int]]:def dfs(start, size, path, res):if len(path) == size:res.append(path)for index in range(start, size):  # 这样写循环,导致只能按顺序生成列dfs(index+1, size, path+[nums[index]], res)res = []path = []size = len(nums)dfs(0, size, path, res)return res

官方解,回溯算法

class Solution:def permute(self, nums: List[int]) -> List[List[int]]:def dfs(path, size, depth, used, res):if depth == size:res.append(path)for i in range(size):if used[i] == False:used[i] = Truedfs(path+[nums[i]], size, depth+1, used, res)used[i] = False  # 深度优先遍历,结束之后,要把used[i]变为False,以便后面遍历,这个很关键path, res = [], []used = [False for _ in range(len(nums))]dfs(path, len(nums), 0, used, res)return res

也可以这样写,拷贝path,并使用pop()。因为变量 path 所指向的列表 在深度优先遍历的过程中只有一份 ,深度优先遍历完成以后,回到了根结点,成为空列表。

class Solution:def permute(self, nums: List[int]) -> List[List[int]]:def dfs(nums, size, depth, path, used, res):if depth == size:res.append(path[:])  # 拷贝,需要pop()returnfor i in range(size):if not used[i]:used[i] = Truepath.append(nums[i])dfs(nums, size, depth + 1, path, used, res)used[i] = Falsepath.pop()size = len(nums)used = [False for _ in range(size)]res = []dfs(nums, size, 0, [], used, res)return res

3 知识点

回溯法
采用试错的思想,它尝试分步的去解决一个问题。在分步解决问题的过程中,当它通过尝试发现现有的分步答案不能得到有效的正确的解答的时候,它将取消上一步甚至是上几步的计算,再通过其它的可能的分步解答再次尝试寻找问题的答案。回溯法通常用最简单的递归方法来实现,在反复重复上述的步骤后可能出现两种情况:

  • 找到一个可能存在的正确的答案;
  • 在尝试了所有可能的分步方法后宣告该问题没有答案。

深度优先搜索 算法(英语:Depth-First-Search,DFS)
是一种用于遍历或搜索树或图的算法。这个算法会 尽可能深 的搜索树的分支。当结点 v 的所在边都己被探寻过,搜索将 回溯 到发现结点 v 的那条边的起始结点。这一过程一直进行到已发现从源结点可达的所有结点为止。如果还存在未被发现的结点,则选择其中一个作为源结点并重复以上过程,整个进程反复进行直到所有结点都被访问为止。

http://www.tj-hxxt.cn/news/109688.html

相关文章:

  • 俄罗斯代购网站我要安装百度
  • 个人网站建设一般流程企业产品营销策划推广
  • 轻淘客网站怎么做搜索引擎营销包括
  • 建设装修公司网站西安网站seo价格
  • 做网站的热门行业优化营商环境的金句
  • 电子商务网站建设毕业论文河北电子商务seo
  • 网站里面嵌入的地图是怎么做的企业文化内容范本
  • 长沙做医院的网站建设自媒体发布软件app
  • 网站改版seo建议重庆网站建设推广
  • 徐州做网站优化按效果付费的网络推广方式
  • 淘宝上成都网站建设廊坊百度seo公司
  • 企业管理培训课程机构黄山搜索引擎优化
  • 做网站前端需要编程基础吗国内seo做最好的公司
  • 专门做分析图的网站磁力搜索引擎不死鸟
  • 巢湖网站设计培训课程网站
  • 音乐网站开发与设计亿驱动力竞价托管
  • 青海住房和城乡建设部网站腾讯广告推广平台入口
  • 河北省建设厅政府网站公示北京债务优化公司
  • 集团公司管理系统seo关键词排名优化的方法
  • 万网网站备案管理输入关键词自动生成文章
  • 政府网站是哪个建设的广州搜发网络科技有限公司
  • 自己做的网站怎么传入外网seo网络优化专员
  • 如何更好的建设和维护网站互联网平台有哪些
  • 专业品牌网站建设价格大数据比较好的培训机构
  • 溧阳网站建设报价百度快速排名软件
  • 云南网站开发温州最好的seo
  • 网站首页设计分析看网站搜什么关键词
  • 商城网站制作需要多少费用山西网络营销外包
  • seo杭州专业关键词排名优化软件
  • 企业网络配置方案企业网站设计优化公司