BST資料結構題

2021-09-07 13:42:59 字數 631 閱讀 9876

給定bst。改動bst,使得每乙個點都是大於他的結點的值之和

關鍵是這題遞迴引數怎麼設計,每乙個點比他大的有兩快。乙個是右子書(假設有的話),還有乙個是祖先裡面比他大的,假設直接用這兩個的話,找不到遞迴結構。

應該設計第乙個引數是祖先比他大的節點和,第二個引數是子樹的和。包含自身。

struct node

;class solution

void f(node* root, int ancestorgreatersum, int& subtreesum)

int leftsubtreesum=0, rightsubtreesum=0;

f(root->right, ancestorgreatersum, rightsubtreesum);

f(root->left, ancestorgreatersum+root->val+rightsubtreesum, leftsubtreesum);

subtreesum=leftsubtreesum+rightsubtreesum;

root->val=ancestorgreatersum+rightsubtreesum;

}};

時間複雜度on,空間o1,此處不包括系統棧

資料結構題

題目背景 把一張紙對折100次就和珠穆朗瑪峰一樣高了哦 syh 題目描述 注 本系列題不按難度排序哦 第一行乙個n,m 接下來一行n個數表示a i 接下來m行,每行l,r,l1,r1,x,表示求get l,r,x get l1,r1,x 輸出描述 3 m行,先輸出get l,r,x 再輸出get l...

資料結構題

題目背景 把一張紙對折100次就和珠穆朗瑪峰一樣高了哦 syh 題目描述 注 本系列題不按難度排序哦 第一行乙個n,m 接下來一行n個數表示a i 接下來m行,每行l,r,l1,r1,x,表示求get l,r,x get l1,r1,x 輸出描述 3 m行,先輸出get l,r,x 再輸出get l...

資料結構 二分搜尋樹(BST)

1.二分搜尋樹的簡單介紹 一般來講,二叉樹的儲存資料的基本結構是封裝乙個node節點,儲存左右兩個孩子的node變數,以及乙個泛型資料,二分搜尋樹需要泛型型別實現comparable介面 必須保證左子樹的資料比右子樹大 created by upupgogogo on 2018 5 30.上午11 ...