/**

  • struct TreeNode {
  • int val;
  • struct TreeNode *left;
  • struct TreeNode *right;
  • }; */

class Solution { public: /** * * @param root TreeNode类 the root * @return int整型vector */

vector<int> res;
vector<int> m_save;
void find_all(TreeNode* root)
{
    if(!root) return;
    find_all(root -> left);
    m_save.push_back(root -> val);
    find_all(root -> right);
}
vector<int> findError(TreeNode* root) {
    // write code here
    
    find_all(root);
    vector<int> m_save2 = m_save;
    sort(m_save.begin(), m_save.end());
    for(int i = 0; i < m_save.size(); i ++ )
    {
        if(m_save[i] != m_save2[i])
        {
            res.push_back(m_save2[i]);
        }
    }
    sort(res.begin(), res.end());
    return res;
}

};