zoukankan      html  css  js  c++  java
  • 538. 把二叉搜索树转换为累加树

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

    例如:

    输入: 二叉搜索树:
    5
    /
    2 13

    输出: 转换为累加树:
    18
    /
    20 13

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/convert-bst-to-greater-tree

     1 public class ConvertBSTtoGreaterTree {
     2     static class TreeNode{
     3         int val;
     4         TreeNode left;
     5         TreeNode right;
     6         TreeNode(int x) {
     7             val = x;
     8         }    
     9     }
    10     
    11     private int sum = 0;
    12     public TreeNode convertBST(TreeNode root) {
    13         if(root == null) {
    14             return null;
    15         }
    16         convertBST(root.right);
    17         int temp = root.val;
    18         root.val += sum;
    19         sum += temp;
    20         convertBST(root.left);
    21         return root;
    22     }
    23 }
    无论有多困难,都坚强的抬头挺胸,人生是一场醒悟,不要昨天,不要明天,只要今天。不一样的你我,不一样的心态,不一样的人生,顺其自然吧
  • 相关阅读:
    C51学习 之 中断
    C51学习 之 动态数码管
    C51学习 之 LED流水灯
    锁存器 工作功能
    keil 5下载地址
    成本与利润最大化问题
    记一次VS下LINK1169的错误
    合并链表
    设计推特
    线段求交点
  • 原文地址:https://www.cnblogs.com/xiyangchen/p/11135932.html
Copyright © 2011-2022 走看看