vertical traversal of binary tree gfg
void getVerticalOrder(TreeNode* root, int hd, map<int, vector<int>> &mp)
{
// Base case
if (root == NULL)
return;
mp[hd].push_back(root->val);
getVerticalOrder(root->left, hd-1, mp);
getVerticalOrder(root->right, hd+1, mp);
}
vector<vector<int>> verticalTraversal(TreeNode* root) {
map < int,vector<int> > mp;
int hd = 0;
getVerticalOrder(root, hd,mp);
vector<vector<int>>ans;
for (auto it=mp.begin(); it!=mp.end(); it++)
{
vector<int> v;
for (int i=0; i<it->second.size(); ++i)
v.push_back(it->second[i]);
// cout << endl;
ans.push_back(v);
}
return ans;
}
Are there any code examples left?
New code examples in category Other
-
Other 2023-03-27 22:50:10 how to select the whole line in vscode with keyboard shortcut
-
Other 2022-03-27 22:45:24 income of a web developer
-
Other 2022-03-27 22:35:01 \pyrcc_main.py: File does not exist 'resources.qrc'
-
Other 2022-03-27 22:30:45 rick roll embed code
-
Other 2022-03-27 22:20:08 Circuit_04_Potentiometer
-
Other 2022-03-27 22:20:05 iterative power
-
Other 2022-03-27 22:15:11 flutter run all
-
Other 2022-03-27 22:10:05 when is karlson release
-
Other 2022-03-27 22:10:02 wp .htaccess example
-
Other 2022-03-27 22:00:08 bash pause in file read line by line