2023年7月11日 星期二

[199] Binary Tree Right Side View

就看我要到什麼時後才可以不要看解答Orz

/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
/**
* Note: The returned array must be malloced, assume caller calls free().
*/
int inner(struct TreeNode* root, int level ,int *ret){
if (root==NULL)
return level;
ret[level] = root->val;
int left , right;
right = inner(root->left,level+1,ret);
left = inner(root->right, level+1,ret);
return (left>right)?(left):(right);
}

int* rightSideView(struct TreeNode* root, int* returnSize){
int *ret=calloc(100,sizeof(int));
int count=0;
count = inner (root, 0, ret);
*returnSize=count;
return ret;
}

沒有留言:

張貼留言