/**
-
Definition for a binary tree node.
-
struct TreeNode {
-
int val;
-
TreeNode *left;
-
TreeNode *right;
-
TreeNode(int x) : val(x), left(NULL), right(NULL) {}
-
};
/
class Solution {
public:
void findchagre(TreeNode root,vector&cc)
{
if(root==NULL)return;findchagre(root->left,cc); cc.push_back(root->val); findchagre(root->right,cc); return;
}
TreeNode* increasingBST(TreeNode* root)
{
vectorcc;
findchagre(root,cc);
TreeNode* tem=new TreeNode(0);
TreeNode* pre=tem;
for(int i=0;i<cc.size()-1;i++)
{
tem->val=cc[i];
TreeNode* node=new TreeNode(NULL);
tem->right=node;
tem=tem->right;
}
tem->val=cc[cc.size()-1];
return pre;
}
};