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

程序代码优化网站百度快速收录办法

程序代码优化网站,百度快速收录办法,小程序前端开发教程,国家市场监督管理总局认研中心回溯经典例题。 题目 通过回溯生成所有可能的排列。每次递归时,选择一个数字,直到选满所有数字,然后记录当前排列,回到上层时移除最后选的数字并继续选择其他未选的数字。每次递归时,在 path 中添加一个新的数字&…

回溯经典例题。

题目

通过回溯生成所有可能的排列。每次递归时,选择一个数字,直到选满所有数字,然后记录当前排列,回到上层时移除最后选的数字并继续选择其他未选的数字。每次递归时,在 path 中添加一个新的数字,直到 path 的长度等于数组 nums 的长度,此时可以将 path 添加到结果集中。当递归深入到某一层时,我们在返回上层前移除 path 中最后添加的数字,恢复现场,尝试其他未选的数字。用循环遍历,然后每次把已加过的数做剔除去选。

记住,dfs递归时会逐层进入,即进入后遇到dfs便会进入下一个dfs,逐渐挖到最深层,然后在出口处加入结果集。接着进行回溯,回溯到上一步的dfs后接着执行当前方法的下面的语句,直到当前方法执行完后再次进行回溯,因此回溯的过程中实际上也是进入循环了,这样也便于选目标元素了。然后递归一定要记得加入的是path副本,回溯时要做好恢复。

class Solution {public List<List<Integer>> permute(int[] nums) {LinkedList<List<Integer>> res = new LinkedList<>();            //排列组合结果LinkedList<Integer> path = new LinkedList<>();                     //单个排列dfs(res,nums,path);return res;}public void dfs(List<List<Integer>> res, int[] nums, LinkedList<Integer> path){if(path.size() == nums.length){res.add( new ArrayList<Integer>(path) );     //对于每次添加的单个排列,应该都是不同的引用对象}for(int i=0; i<nums.length; i++){if(path.contains(nums[i]))  {continue;}              //当前层中,已添加的数不再考虑  path.add(nums[i]);                                   //未添加的数则存放dfs(res, nums, path);               //进入下一层(递归)path.removeLast();                                  //从深层节点向浅层节点回溯}}
}

http://www.mmbaike.com/news/83446.html

相关文章:

  • 潍坊哪里做网站好seo优化工作有哪些
  • 教你做兼职的网站百度指数峰值查询
  • 创建手机网站hyein seo官网
  • 在京东上怎样做网站网站制作公司
  • 电子科技企业网站建设百度广告联盟点击一次多少钱
  • 个人站点的制作黄冈网站推广策略
  • 建设网站都需要准备什么材料友情链接购买
  • 南昌高端网站开发费用表金泉网做网站多少钱
  • 怎么确定电商网站建设的目标百度快照是啥
  • 合肥房产网新楼盘二手房网站整站优化推广方案
  • wp网站做404seo手机优化软件哪个好用
  • 互联网网站制作公司博客网站
  • 淘宝联盟做返利网站佛山做网络优化的公司
  • 小学生做网站入门seo技术教程
  • 网站建设意见打开百度app
  • 馆陶企业做网站推广aso优化费用
  • 电子商务网站开发需求分析seo优化操作
  • 江西网站建设哪家专业网络营销推广专家
  • 云服务器和网站空间网站推广的目的是什么
  • 银川网站公司seo排名优化什么意思
  • Wordpress写文章贴代码安卓优化大师新版
  • 桂林北站到象鼻山景区怎么坐车青岛网站制作seo
  • 网络全案推广百度排名优化工具
  • 怎么看网站什么时候做的附近的电脑培训班在哪里
  • 商城网站实例百度怎么发自己的小广告
  • 垦利网站设计网络广告策划书范文
  • 麻城网站建设大连seo关键词排名
  • 大兴模版网站开发公司哪家好seo优化需要多少钱
  • 网站中滚动条怎么做如何推广品牌知名度
  • 一条龙网站建设哪家好长沙互联网网站建设