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

湖北网站建设的释义java培训机构十强

湖北网站建设的释义,java培训机构十强,做网站需要机吗,网站集约化建设管理1. 题目链接:46. 全排列 2. 题目描述:给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1: 输入:nums [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[…

1. 题目链接:46. 全排列

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

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

递归流程如下:
1. 首先定义一个二维数组 res 用来存放所有可能的排列,一个一维数组 ans 用来存放每个状态的排列,一个一维数组 visited 标记元素,然后从第一个位置开始进行递归;
2. 在每个递归的状态中,我们维护一个步数 step,表示当前已经处理了几个数字;
3. 递归结束条件:当 step 等于 nums 数组的长度时,说明我们已经处理完了所有数字,将当前数组存入结果中;
4. 在每个递归状态中,枚举所有下标 i,若这个下标未被标记,则使用 nums 数组中当前下标的元
素:
a. 将 visited[i] 标记为 1;
b. ans 数组中第 step 个元素被 nums[i] 覆盖;
c. 对第 step+1 个位置进行递归;
d. 将 visited[i] 重新赋值为 0,表示回溯;
5. 最后,返回 res。
• 特别地,我们可以不使用标记数组,直接遍历 step 之后的元素(未被使用),然后将其与需要递
归的位置进行交换即可。 

class Solution {List<List<Integer>> ret;List<Integer> path;boolean[] check;public List<List<Integer>> permute(int[] nums) {int n=nums.length;ret=new ArrayList<>();path=new ArrayList<>();check=new boolean[n];dfs(nums);return ret;}public void dfs(int[] nums){if(nums.length==path.size()){ret.add(new ArrayList<>(path));return ;}for(int i=0;i<nums.length;i++){if(check[i]==false){path.add(nums[i]);check[i]=true;dfs(nums);check[i]=false;path.remove(path.size()-1);}}}
}
http://www.mnyf.cn/news/50029.html

相关文章:

  • 一般做网站多少钱网络销售好不好做
  • vs网站制作教程seo怎么优化网站排名
  • 如何做地图的ppt模板下载网站制作网页教程
  • 搭建网站用什么语言免费外链发布平台
  • 怎么查看域名网站的容量到期软文发布平台媒体
  • 广安建网站正规营销培训
  • 佛山网站建设网站制作公司哪家好seoer是什么意思
  • 广东南方通信建设有限公司官方网站电商seo引流
  • 手机网站演示seo优化推广技巧
  • 网站开发试题网络服务器是指什么
  • 做网站用的系统重庆百度地图
  • 人大网站建设不足东莞关键字排名优化
  • wordpress 链接提交表单广州seo推广
  • cad做兼职区哪个网站电脑软件推广平台
  • 可靠的镇江网站建设微信推广
  • 代做企业网站网站推广关键词工具
  • 陕西旭泽建设有限公司网站培训心得体会200字
  • 广东营销型网站在百度上打广告找谁
  • 做网站都去哪里找模板怎样进入12345的公众号
  • 互联网趋势发展前景西安seo优化培训
  • 网站建设招聘要求优化官网咨询
  • 成都定制软件开发公司武汉seo人才
  • 找网站公司制作网站资阳市网站seo
  • wordpress quizzin衡水seo培训
  • 哪个网站找到做箱包厂外发的seo竞价
  • 成立公司需要具备什么条件班级优化大师的功能
  • 网站banner怎么居中永久免费linux服务器
  • 网站架构策划书网络营销策略都有哪些
  • 石河子网站建设网站页面设计
  • 苏州正规做网站公司厦门seo服务