给你一个树,请你按中序遍历 重新排列树,使树中最左边的结点现在是树的根,并且每个结点没有左子结点,只有一个右子结点。
/**
* Definition for a binary tree node.
* struct TreeNode {
* int val;
* struct TreeNode *left;
* struct TreeNode *right;
* };
*/
struct TreeNode* cur;
void inorder(struct TreeNode* node){
if(node){
inorder(node->left);
node->left = NULL;
cur->right=node;
cur=node;
inorder(node->right);
}
else return;
}
struct TreeNode* increasingBST(struct TreeNode* root){
struct TreeNode* ans=(struct TreeNode*)malloc(sizeof(struct TreeNode));
cur=ans;
inorder(root);
return ans->right;
}