日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

      歡迎訪問 生活随笔!

      生活随笔

      當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

      编程问答

      把二叉搜索树转换为累加树

      發布時間:2025/6/15 编程问答 31 豆豆
      生活随笔 收集整理的這篇文章主要介紹了 把二叉搜索树转换为累加树 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

      給定一個二叉搜索樹(Binary Search Tree),把它轉換成為累加樹(Greater Tree),使得每個節點的值是原來的節點值加上所有大于它的節點值之和。

      例如:

      輸入:?二叉搜索樹:
      5
      / \
      2 13
      輸出:?轉換為累加樹:
      18
      / \
      20 13

      ?反序中序遍歷

      func convertBST(root *TreeNode) *TreeNode {sum := 0var dfs func(*TreeNode)dfs = func(node *TreeNode) {if node != nil {dfs(node.Right)sum += node.Valnode.Val = sumdfs(node.Left)}}dfs(root)return root }

      二叉搜索樹的中序遍歷時單調遞增的,他的反向遍歷就是單調遞減的。累加是只累加比他大的值,則從最大數的開始遍歷,這樣剛好對應的值就是當前的值加上前一個節點的值。

      ?

      參考地址:https://leetcode-cn.com/problems/convert-bst-to-greater-tree/solution/ba-er-cha-sou-suo-shu-zhuan-huan-wei-lei-jia-sh-14/

      總結

      以上是生活随笔為你收集整理的把二叉搜索树转换为累加树的全部內容,希望文章能夠幫你解決所遇到的問題。

      如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。