博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
leetcode 538. 把二叉搜索树转换为累加树(Convert BST to Greater Tree)
阅读量:4608 次
发布时间:2019-06-09

本文共 863 字,大约阅读时间需要 2 分钟。

目录

题目描述:

给定一个二叉搜索树(Binary Search Tree),把它转换成为累加树(Greater Tree),使得每个节点的值是原来的节点值加上所有大于它的节点值之和。

示例:

输入: 二叉搜索树:              5            /   \           2     13输出: 转换为累加树:             18            /   \          20     13

解法:

/** * Definition for a binary tree node. * struct TreeNode { *     int val; *     TreeNode *left; *     TreeNode *right; *     TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */class Solution {public:        void convertBST(TreeNode* root, int& val){        if(!root){            return ;        }else{            convertBST(root->right, val);            val += root->val;            root->val = val;            convertBST(root->left, val);        }    }        TreeNode* convertBST(TreeNode* root) {        int val = 0;        convertBST(root, val);        return root;    }};

转载于:https://www.cnblogs.com/zhanzq/p/10598279.html

你可能感兴趣的文章
osip及eXosip的编译方法
查看>>
Hibernate composite key
查看>>
[CF Round #294 div2] D. A and B and Interesting Substrings 【Map】
查看>>
PHP error_reporting(0)
查看>>
关键字super
查看>>
.NET Core RC2发布在即,我们试着用记事本编写一个ASP.NET Core RC2 MVC程序
查看>>
【前端攻略】:玩转图片Base64编码
查看>>
Ocelot中文文档-路由
查看>>
分布式锁
查看>>
SQLServer约束介绍
查看>>
SQLPROMPT5.3对各种加密对象的解密测试
查看>>
js获取input file完整路径的方法
查看>>
lxc 0.8.0 lxc-ubuntu 脚本
查看>>
CentOS虚拟机如何设置共享文件夹,并在Windows下映射网络驱动器?
查看>>
Symfony相关网站参考
查看>>
Java一些基本帮助类
查看>>
shell中的expr命令
查看>>
HDU1863畅通工程(最小生成树 Kruskal)
查看>>
linux查看硬件信息命令
查看>>
洛谷——图论
查看>>