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

建个网站需要多少钱?江西省大余县建设局网站

建个网站需要多少钱?,江西省大余县建设局网站,杭州网站制作排名,遵义市建设局网站一、题目内容 题目要求将给定的二叉搜索树#xff08;BST#xff09;转换为累加树#xff08;Greater Sum Tree#xff09;#xff0c;使每个节点的值等于原树中大于或等于该节点值的所有节点值之和。转换后的树应保持原有的二叉搜索树结构。 二、题目分析 #xff08;…一、题目内容 题目要求将给定的二叉搜索树BST转换为累加树Greater Sum Tree使每个节点的值等于原树中大于或等于该节点值的所有节点值之和。转换后的树应保持原有的二叉搜索树结构。 二、题目分析 一输入和输出 输入二叉搜索树的根节点 root。 输出转换后的累加树的根节点。 二递归函数 convertBST 的逻辑 基本情况如果当前节点为空root NULL说明当前分支没有节点直接返回 NULL。 递归逻辑 从右子树开始递归处理因为右子树的值大于当前节点的值。 更新当前节点的值为当前节点值加上之前遍历到的节点值之和通过一个全局变量 pre 记录。 更新全局变量 pre 为当前节点的新值。 递归地对左子树进行处理。 三、解题要点 一二叉搜索树的定义 二叉搜索树是一种特殊的二叉树其性质是对于任意节点其左子树上所有节点的值都小于该节点的值其右子树上所有节点的值都大于该节点的值。这一性质是转换操作的基础转换操作需要保持这一性质不变。 二转换操作的性质 转换操作需要保持二叉搜索树的结构不变同时更新每个节点的值为原树中大于或等于该节点值的所有节点值之和。 三解题思路 基本情况 如果当前为空节点root NULL直接返回 NULL。这是递归的终止条件。 递归逻辑 从右子树开始递归处理因为右子树的值大于当前节点的值。 更新当前节点的值为当前节点值加上之前遍历到的节点值之和。 更新全局变量 pre 为当前节点的新值。 递归地对左子树进行处理。 递归返回 递归返回时返回当前节点。这一步确保了递归调用的正确性使得每次递归返回后当前节点的状态被正确恢复不会影响后续的递归调用。 四、代码解答 class Solution { public:int pre 0; // 用于记录之前遍历到的节点值之和TreeNode* convertBST(TreeNode* root) {// 如果当前节点为空直接返回 NULLif (root NULL) return NULL;// 递归地对右子树进行处理convertBST(root-right);// 更新当前节点的值root-val pre;pre root-val; // 更新全局变量 pre// 递归地对左子树进行处理convertBST(root-left);// 返回当前节点return root;} }; 五、详细注释 一递归函数 convertBST 基本情况如果当前节点为空直接返回 NULL。 递归逻辑根据二叉搜索树的性质从右子树开始递归更新当前节点的值然后递归处理左子树。 返回值返回当前节点确保递归调用后当前节点的状态被正确恢复。 二全局变量 pre 全局变量 pre 用于记录之前遍历到的节点值之和。它在递归过程中被不断更新用于计算当前节点的新值。 六、递归和回溯的详细解释 一递归 递归是一种函数调用自身的方法用于解决复杂问题。在本题中递归用于逐层遍历每个节点根据二叉搜索树的性质从右子树开始遍历更新当前节点的值并对左子树进行处理。递归的核心思想是将问题分解为更小的子问题通过解决子问题来解决原问题。 二终止条件 递归的终止条件是当前节点为空此时直接返回 NULL。这是递归的出口确保递归不会无限进行下去。 三回溯 在递归调用返回后通过返回值恢复到当前节点的状态确保每次递归返回后状态正确不会影响后续的递归调用。 四递归调用的详细过程 假设我们有一个二叉搜索树根节点为 root值为 5其左子节点值为 3右子节点值为 7。现在要将其转换为累加树。 初始调用convertBST(root)当前节点值为 5。 递归调用右子树convertBST(root-right)当前节点值为 7更新 pre 为 7。 递归调用左子树convertBST(root-left)当前节点值为 3更新 pre 为 107 3。 最终返回转换后的根节点其值为 12左子树的值为 10右子树的值为 7。 五代码执行过程示例 假设我们有一个二叉搜索树根节点为 root值为 5其左子节点值为 3右子节点值为 7。现在要将其转换为累加树。 初始调用convertBST(root)当前节点值为 5。 递归调用右子树convertBST(root-right)当前节点值为 7更新 pre 为 7。 递归调用左子树convertBST(root-left)当前节点值为 3更新 pre 为 107 3。 最终返回转换后的根节点其值为 12左子树的值为 10右子树的值为 7。 通过以上分析和代码实现我们可以高效地完成二叉搜索树的转换操作同时保持树的结构和性质不变。
http://www.hkea.cn/news/14436094/

相关文章:

  • 太原市做网站做网站用什么云服务器吗
  • 做爰网站下载地址谷歌推广优化
  • 如何运行asp.net网站制作网站后台
  • 月嫂网站模板南京整站优化
  • 邢台市政建设集团网站域名和网站不是一家怎么办
  • 个人做网站有什么坏处怎么开发wordpress子主题
  • 电商网站建设费用价格网站如何备份
  • 微网站怎么建设网络营销特点是什么
  • 南京 公司网站制作jeecg 做网站
  • 大邑县建设局网站三明seo培训
  • 大型公司网站制作广州官方宣布
  • c 做网站时字体颜色的代码百度人工优化
  • 台州建设公司网站深圳建设企业
  • 宁波外贸网站设计推广普通话的手抄报
  • 旅游网站的网页设计申请域名的方法和流程
  • 网站百度商桥郑州妇科
  • 网站模板jsp可以赚钱做任务的网站有哪些
  • 惠州网站建设制作微信自动加好友软件
  • 广西明电建设有限公司网站wordpress早期版本
  • 无锡网站建设网页制作中小企业建站平台
  • 建立销售型网站美容网站建设一个多少钱
  • wordpress tag 优化企业seo网站推广公司
  • 毕业设计网站做啥网站开发与软件开发的异同
  • 网站建设頰算网络运维工程师是干什么的
  • 发布网站需要多大空间WordPress自定义icon
  • 网站建设公司有哪些比较知名的人才招聘网站怎么做
  • 做网站赚钱的案例广西电力工程建设公司网站
  • 网站建设报价 福州蓬安网站建设
  • 大连嘉良建设有限公司网站怎么做免费公司网站
  • 视频网站建设 方案设计师用什么软件