void inordertraversal(Node* root,vector <int> &arr){
    if(root==NULL)return ;
    inordertraversal(root->left,arr);
    arr.push_back(root->data);
    inordertraversal(root->right,arr);
}

bool isBST(Node* root) {
    vector <int> arr;
    inordertraversal(root,arr);//O(nodes) O(height)
    int prev=INT_MIN;
    for(int i=0;i<arr.size();i++)
    {
        if(prev>=arr[i])return false;
        prev=arr[i];
    }
    return true;
}


//Time  Complexity:O(nodes)+O(nodes) =O(nodes)
//Space Complexity:O(nodes)+O(height)=O(nodes)