树遍历的变形
/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
struct TreeNode* convertBiNode(struct TreeNode* root){
if(!root) return NULL;
if(!root->left&&!root->right) return root;
struct TreeNode* temp=convertBiNode(root->left);
root->left=NULL;
if(temp){
struct TreeNode* a=temp;
while(a && a->right) a=a->right;
a->right=root;
}
struct TreeNode* t=convertBiNode(root->right);
root->right=t;
if(t) t->left=NULL;
if(!temp) return root;
return temp;
}
结果:
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。