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

呼市网站建设东方建设集团有限公司网站

呼市网站建设,东方建设集团有限公司网站,哪里有html企业网站模板下载,建邺网站建设1.回溯 回溯可以视为递归的拓展,有着明确的解题模板。 很大的不同之处是有一个撤销处理结果的操作,但是大框架就是遍历 N 叉树。 回溯主要解决暴力枚举都解决不了的问题。 回溯模板: void backtracking(参数) {if (终止条件) {存放结果;…

1.回溯

回溯可以视为递归的拓展,有着明确的解题模板。

很大的不同之处是有一个撤销处理结果的操作,但是大框架就是遍历 N 叉树。

回溯主要解决暴力枚举都解决不了的问题。

回溯模板:

void backtracking(参数) {if (终止条件) {存放结果;return;}for (选择本层集合中元素(画成树,就是树节点孩子的大小)) {处理节点;backtracking();回溯,撤销处理结果;}
}

回溯完整代码示例:返回 1 到 n 中所有可能的 k 个数的组合

public List<List<Integer>> combine(int n, int k) {List<List<Integer>> resultList = new ArrayList<>();if (k <= 0 || n < k) {return resultList;}Deque<Integer> path = new ArrayDeque<>();dfs(n, k, 1, path, res);return res;
}public void dfs(int n, int k, int startIndex, Deque<Integer> path, List<List<Integer>> resultList) {if (path.size() == k) {resultList.add(new ArrayList<>(path));return;}for (int i = startIndex; i <= n; i++) {path.addLast(i);dfs(n, k, i + 1, path, resultList);path.removeLast();}
}

2.回溯题目:输出二叉树的所有路径

原题:力扣257.

class BinaryTreePaths {List<String> ans = new ArrayList<>();public List<String> binaryTreePaths(TreeNode root) {dfs(root, new ArrayList<>());return ans;}private void dfs(TreeNode root, List<Integer> temp) {if (root == null) {return;}temp.add(root.val);if (root.left == null && root.right == null) {ans.add(getPathString(temp));}dfs(root.left, temp);dfs(root.right, temp);temp.remove(temp.size() - 1);}private String getPathString(List<Integer> temp) {StringBuilder sb = new StringBuilder();sb.append(temp.get(0));for (int i = 1; i < temp.size(); i++) {sb.append("->").append(temp.get(i));}return sb.toString();}
}

3.回溯题目:路径总和问题

原题:力扣113.

class PathSum {List<List<Integer>> res = new ArrayList<>();public List<List<Integer>> pathSum(TreeNode root, int targetSum) {LinkedList<Integer> path = new LinkedList<>();dfs(root, targetSum, path);return res;}public void dfs(TreeNode root, int targetSum, LinkedList<Integer> path) {if (root == null) {return;}targetSum -= root.val;path.add(root.val);if (targetSum == 0 && root.left == null && root.right == null) {res.add(new LinkedList(path));}dfs(root.left, targetSum, path);dfs(root.right, targetSum, path);path.removeLast();}
}

如果对您有帮助,请点赞关注支持我,谢谢! ❤
如有错误或者不足之处,敬请指正! ❤
个人主页:星不易 ❤
算法通关村专栏:不易|算法通关村 ❤

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

相关文章:

  • 标准版网站制作wordpress 多站点 主站点
  • 网站建设的实验总结华为仓颉编程语言
  • 静海做网站公司云主机搭建asp网站
  • 网站推广码怎么做网站开发需要什么技能
  • 网站怎样做权重企业网站建设招标书
  • 关于建设设计院公司网站的建议网页游戏大全小游戏
  • 做网站怎么挣钱赚钱网站开发规范有哪些
  • 网站建设如何设计数据库免费 网站 平台
  • 公司网站建设合同需要交印花税阿里云可以做电影网站
  • 如何在后台做网站分页建设旅游网站的必要性
  • 濮阳做网站多少钱网站备案需要几天
  • 网站建设陆金手指谷哥7wordpress zmovie主题
  • 男女做暖暖的试看网站酥酥影视刚刚传来最新消息
  • 建站公司现状中国建设工程造价管理系统
  • 网站群 seo北京建设网华樾领尚规划图
  • 软件网站开发评估注册商标有什么好处和坏处
  • 福田网站建设多少钱网站做用户登录
  • 深圳查询建设项目规划的网站公司网站建设的项目工作分解结构
  • 诚信通网站怎么做wordpress 短代码 插件
  • 阳江网站建设推广企业门户系统
  • 网站建设计划方案wordpress audio player 下载
  • 网站建设网站制作有限网络营销推广方案
  • 易营宝mip网站建设微擎微网站开发
  • 网站开发创建画布深圳seo排名
  • 国内老牌的广州网站建设一份完整的活动策划
  • 哪些网站做京东的团购上海装修公司口碑最好的是哪家
  • 购物网站建设存在的问题cdn wordpress 统计
  • 网站上做相关链接无需付费在线观看渠道
  • 常州网站建站公司常德今天最新通告
  • 陕西省建设厅网站月报网站备案号怎么查