Advertisement
eduardovp97

ex2.c

Nov 14th, 2016
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.17 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include "tree.h"
  4.  
  5. int minInTree2(TNode *node);
  6. int minInTree(TTree *tree);
  7. int inRange(TTree *tree, int a, int b);
  8. int maxInTree(TTree *tree);
  9. int maxInTree2(TNode *node);
  10.  
  11. int main(){
  12.  
  13.     TTree arbol;
  14.     crearArbol(&arbol);
  15.     insertar(&arbol,15);
  16.     insertar(&arbol,6);
  17.     insertar(&arbol,3);
  18.     insertar(&arbol,1);
  19.     insertar(&arbol,4);
  20.     insertar(&arbol,9);
  21.     insertar(&arbol,7);
  22.     insertar(&arbol,12);
  23.     insertar(&arbol,20);
  24.     insertar(&arbol,18);
  25.     insertar(&arbol,24);
  26.     insertar(&arbol,17);
  27.  
  28.     printf("%d\n", inRange(&arbol,1,24));
  29.  
  30.     return 0;
  31. }
  32.  
  33. int inRange(TTree *tree, int a, int b){
  34.     int min = minInTree(tree);
  35.     int max = maxInTree(tree);
  36.     if(a>=min && b<=max)
  37.         return 1;
  38.     return 0;
  39. }
  40.  
  41. int minInTree(TTree *tree){
  42.     if(tree->root == NULL)
  43.         return -1;
  44.     return minInTree2(tree->root);
  45. }
  46.  
  47. int minInTree2(TNode *node){
  48.     if(node->der == NULL)
  49.         return node->info;
  50.     return minInTree2(node->izq);
  51. }
  52.  
  53. int maxInTree(TTree *tree){
  54.     if(tree->root == NULL)
  55.         return -1;
  56.     return maxInTree2(tree->root);
  57. }
  58.  
  59. int maxInTree2(TNode *node){
  60.     if(node->izq == NULL)
  61.         return node->info;
  62.     return maxInTree2(node->der);
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement