fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. struct node{
  4. int data;
  5. node* left;
  6. node* right;
  7. node(int val){
  8. data=val;
  9. left=NULL;
  10. right=NULL;
  11. }
  12. };
  13. bool check(node* root,node* root2){
  14. if(root==NULL && root2==NULL ){
  15. return true;
  16. }
  17. if((root->left==NULL && root2->left !=NULL) ||(root->left !=NULL && root2->left==NULL)){
  18. return false;
  19. }
  20. if((root->right==NULL && root2->right !=NULL) ||(root->right !=NULL && root2->right==NULL)){
  21. return false;
  22. }
  23. if(root->data !=root2->data){
  24. return false;
  25. }
  26. return check(root->left,root2->left);
  27. return check(root->right,root2->right);
  28. }
  29.  
  30. int main() {
  31. node* root=new node(1);
  32. root->left=new node(2);
  33. root->right=new node(3);
  34. root->left->right=new node(4);
  35. root->right->right=new node(5);
  36. node* root2=new node(1);
  37. root2->left=new node(2);
  38. root2->right=new node(3);
  39. root2->left->right=new node(4);
  40. root2->right->right=new node(5);
  41. cout<<"7";
  42. cout<< check(root,root2);
  43. return 0;
  44. }
Success #stdin #stdout 0.01s 5524KB
stdin
Standard input is empty
stdout
71