Advertisement
diegoguerrero

ED - TAD Árbol - Árbol binario v. 1

Apr 18th, 2019
188
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.42 KB | None | 0 0
  1. UNIT uArbolBinario;
  2. INTERFACE
  3.  
  4.     USES uElementoInteger;
  5.  
  6.     TYPE
  7.         TApuntadorArbol = ^TNodo;
  8.         TNodo = RECORD
  9.             info : TElemento;
  10.             izq, dch : TApuntadorArbol;
  11.         END;
  12.         TArbolBin = TApuntadorArbol;
  13.  
  14.     {Constructoras generadoras}
  15.         PROCEDURE CrearArbolBinVacio(VAR a : TArbolBin);
  16.         PROCEDURE ConstruirArbolBin(VAR a : TArbolBin; i : TArbolBin; e : TElemento; d : TArbolBin);
  17.     {Constructoras no generadoras}
  18.         PROCEDURE Raiz(a : TArbolBin; VAR e : TElemento);
  19.         PROCEDURE HijoIzq(a : TArbolBin; VAR e : TArbolBin);
  20.         PROCEDURE HijoDch(a : TArbolBin; VAR e : TArbolBin);
  21.     {Observadoras selectoras}
  22.     {Observadoras no selectoras}
  23.         FUNCTION EsArbolBinVacio(a : TArbolBin):boolean;
  24.  
  25. IMPLEMENTATION
  26. {Constructoras generadoras}
  27.     PROCEDURE CrearArbolBinVacio(VAR a : TArbolBin);
  28.         BEGIN
  29.             a := NIL;
  30.         END;
  31.     PROCEDURE ConstruirArbolBin(VAR a : TArbolBin; i : TArbolBin; e : TElemento; d : TArbolBin);
  32.         BEGIN
  33.             new(a);
  34.             Asignar(a^.info, e);
  35.             a^.izq := i;
  36.             a^.dch := d;
  37.         END;
  38.  
  39. {Constructoras no generadoras}
  40.     PROCEDURE Raiz(a : TArbolBin; VAR e : TElemento);
  41.         BEGIN
  42.             Asignar(e, a^.info);
  43.         END;
  44.     PROCEDURE HijoIzq(a : TArbolBin; VAR e : TArbolBin);
  45.         BEGIN
  46.             e := a^.izq;
  47.         END;
  48.     PROCEDURE HijoDch(a : TArbolBin; VAR e : TArbolBin);
  49.         BEGIN
  50.             e := a^.dch;
  51.         END;
  52.  
  53. {Observadoras no selectoras}
  54.     FUNCTION EsArbolBinVacio(a : TArbolBin):boolean;
  55.         BEGIN
  56.             EsArbolBinVacio := (a = NIL);
  57.         END;
  58. END.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement