void convert(TreeNode* root,TreeNode** preNode,TreeNode** head){
if (root==NULL)
return;
convert(root->left,preNode,head);
if (*preNode!= NULL){
root->left = *preNode;
(*preNode)->right = root;
}
*preNode = root;
if (*head == NULL)
*head = root;
convert(root->right,preNode,head);
}
TreeNode* convert(TreeNode* root){
if (root== NULL)
return root;
TreeNode *preNode = NULL;
TreeNode *head = NULL;
convert(root,&preNode,&head);
return head;
}