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

网站上的招牌图怎么做怎么做网站服务器

网站上的招牌图怎么做,怎么做网站服务器,做企业网站步骤,顺义建设工程交易中心网站阅读目录 1. 题目2. 解题思路3. 代码实现 1. 题目 2. 解题思路 二叉树的问题首先我们要想想是否能用递归来解决#xff0c;本题也不例外#xff0c;而递归的关键是找到子问题。 我们首先来看看一棵最简单的树#xff0c;也就是示例 1。这样的一棵树总共有六条路径#xf… 阅读目录 1. 题目2. 解题思路3. 代码实现 1. 题目 2. 解题思路 二叉树的问题首先我们要想想是否能用递归来解决本题也不例外而递归的关键是找到子问题。 我们首先来看看一棵最简单的树也就是示例 1。这样的一棵树总共有六条路径分别是根节点、左节点-根节点、右节点-根节点、左节点、右节点、左节点-根节点-右节点我们用一个大小为 6 的数组 rootSum 来分别表示这六条路径的路径和那么所求的最大路径和即为 rootSum 的最大值。 需要注意当某一个节点为空的时候比如左节点为空那么左节点-根节点路径和为根节点的值左节点贡献值为 0。而单独左节点的路径不存在路径和应该设置为一个极大的负值。 接下来我们再考虑一个更复杂的树这棵树的根节点有左右两棵子树每一棵子树都是类似上面示例 1 的一棵树。那么我们可以很容易地得到左右子树的路径和数组 leftSum 和 rightSum 接下来我们要做的就是如何根据这两个数组得到整棵树的路径和数组 rootSum rootSum 仍然有 6 条路径其中 只有一个根节点的路径rootSum[0]root-val左节点-根节点的路径这时候由于左节点是一棵子树所以只有包含子树中根节点的路径才能继续和当前的根节点组成新的路径也就是子树的前三条路径然后我们取其中最大的一条即可rootSum[1]root-val max(leftSum[0:3))右节点-根节点的路径这个和上面的类似rootSum[2]root-val max(rightSum[0:3))左节点也即是单独左子树组成的最大路径rootSum[3]max(leftSum[0:6))右节点也即是单独右子树组成的最大路径rootSum[4]max(rightSum[0:6))左节点-根节点-右节点也就是左子树的路径包含左子树的根节点右子树的路径包含右子树的根节点rootSum[5]max(leftSum[0:3)) root-val max(rightSum[0:3)) 时间复杂度为 O ( n ) O(n) O(n) n n n 代表节点总数每个节点都需要进行遍历一次空间复杂度为 O ( n ) O(n) O(n)每个节点都需要存储 6 个状态值。 3. 代码实现 /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/ class Solution { public:vectorint getNodePathSum(TreeNode* root) {int leftRootSum 0, leftMaxSum -10000;if (root-left ! nullptr) {vectorint leftSum getNodePathSum(root-left);leftRootSum *std::max_element(leftSum.begin(), leftSum.begin() 3);leftMaxSum *std::max_element(leftSum.begin(), leftSum.end());}int rightRootSum 0, rightMaxSum -10000;if (root-right ! nullptr) {vectorint rightSum getNodePathSum(root-right);rightRootSum *std::max_element(rightSum.begin(), rightSum.begin() 3);rightMaxSum *std::max_element(rightSum.begin(), rightSum.end());}vectorint rootSum(6, 0);rootSum[0] root-val;rootSum[1] leftRootSum root-val;rootSum[2] rightRootSum root-val;rootSum[3] leftMaxSum;rootSum[4] rightMaxSum;rootSum[5] leftRootSum root-val rightRootSum;return rootSum;}int maxPathSum(TreeNode* root) {vectorint sum getNodePathSum(root);return *std::max_element(sum.begin(), sum.end());} };
http://www.hkea.cn/news/14331248/

相关文章:

  • 三明建设网站做介绍翻译英文网站
  • 给非吸公司建设网站wordpress 相关插件
  • 青海建设银行的官方网站新闻播报最新
  • 云集网站哪个公司做的个人可以建网站卖东西吗
  • 中堂镇仿做网站网站建设服务预算
  • 网站建设及发展国内网页设计师个人网站
  • 游戏网站模板html公司管理系统数据库
  • 建设一网站有什么用wordpress 100万数据库
  • 免费平面设计模板网站西安曲江文化园区建设开发有限公司网站
  • wordpress的多站点网站无法访问工程竣工信息哪里可以查询
  • wordpress建站需要学什么太原论坛网站开发公司
  • 手机网站怎么搜索引擎网站设计规划的创意
  • 装修设计图包括哪些图纸嘉兴新站seo外包
  • 网站个人备案容易过吗秦皇岛黄金海岸潮汐表
  • 佛山网站建设免费建立属于自己的网站
  • wordpress主题 站长静态网站制作模板
  • 网站快速网站推广江苏建设教育协会网站
  • 广告推广的方式有哪些seo关键词快速提升软件官网
  • 怎么制作网站链接转发视频成都最好的设计公司
  • 长春网站建设长春沈阳建设工程信息网官网查询
  • 带询盘外贸网站源码源代码下载
  • wordpress头像尺寸乐清手机网站优化推广
  • 请人做网站收费多少钱泉州seo按天收费
  • 湖北网站建设服务公司石家庄做网站电话
  • 网站建设应该注意哪些做外链网站有哪些
  • 赤峰网站建设企业机关网站建设方案
  • 电商网站建设技术可行性分析工作室建设基础
  • 站长统计app网站h5网站建站
  • 上饶市住房和城乡建设网站哈尔滨产品推广网站
  • 舟山建设企业网站贵阳招聘网站建设