SlideShare una empresa de Scribd logo
1 de 3
ARBOL BINARIO
Código:
#include <iostream>
#include <cstdlib>
using namespace std;
struct nodo{
int nvo;
struct nodo *izq, *der;
};
typedef struct nodo *AB;
AB crearNodo(int x){
AB nuevoNodo = new(struct nodo);
nuevoNodo->nvo = x;
nuevoNodo->izq = NULL;
nuevoNodo->der = NULL;
return nuevoNodo;
}
void insertar(AB &arbol, int x){
if(arbol==NULL){
arbol = crearNodo(x);
}
else if(x < arbol->nvo)
insertar(arbol->izq, x);
else if(x > arbol->nvo)
insertar(arbol->der, x);
}
void preOrden(AB arbol){
if(arbol!=NULL){
cout << arbol->nvo <<" ";
preOrden(arbol->izq);
preOrden(arbol->der);
}
}
void enOrden(AB arbol){
if(arbol!=NULL){
enOrden(arbol->izq);
cout << arbol->nvo << " ";
enOrden(arbol->der);
}
}
void postOrden(AB arbol){
if(arbol!=NULL){
postOrden(arbol->izq);
postOrden(arbol->der);
cout << arbol->nvo << " ";
}
}
void mostrarArbol(AB arbol, int n){
if(arbol==NULL)
return;
mostrarArbol(arbol->der, n+1);
for(int i=0; i<n; i++)
cout<<"--->";
cout<< arbol->nvo <<endl;
mostrarArbol(arbol->izq, n+1);
}
int main(){
AB arbol = NULL;
int n;
int x;
cout << "ntt CONTRUCCION Y RECORRIDOS DE UN ARBOL BINARIO nn";
cout << " Inserte el numero de nodos del arbol: ";
cin >> n;
cout << endl;
for(int i=0; i<n; i++){
cout << " Numero del nodo " << i+1 << ": ";
cin >> x;
insertar( arbol, x);
}
cout << "n Este es el esquema del arbol: nn";
mostrarArbol( arbol, 0);
cout << "n Los recorridos del arbol son: ";
cout << "nn En orden: ";
enOrden(arbol);
cout << "nn Pre Orden: ";
preOrden(arbol);
cout << "nn Post Orden: ";
postOrden(arbol);
cout << endl;
system("pause");
return 0;
}
Pantalla de salida:

Más contenido relacionado

La actualidad más candente

Tablas Hash (Sergio García Trapiello)
Tablas Hash (Sergio García Trapiello)Tablas Hash (Sergio García Trapiello)
Tablas Hash (Sergio García Trapiello)edi.euitio
 
Tabla Hash (Guillermo Cueva Fernández)
Tabla Hash (Guillermo Cueva Fernández)Tabla Hash (Guillermo Cueva Fernández)
Tabla Hash (Guillermo Cueva Fernández)edi.euitio
 
Colas 1er ejercicio
Colas 1er ejercicioColas 1er ejercicio
Colas 1er ejercicioCerdorock
 
Tablas hash (Sergio Esturillo Cenizo)
Tablas hash (Sergio Esturillo Cenizo)Tablas hash (Sergio Esturillo Cenizo)
Tablas hash (Sergio Esturillo Cenizo)edi.euitio
 
Tablas Hash (Roberto Cancio González)
Tablas Hash (Roberto Cancio González)Tablas Hash (Roberto Cancio González)
Tablas Hash (Roberto Cancio González)edi.euitio
 
Programa que suma y multiplica
Programa que suma y multiplicaPrograma que suma y multiplica
Programa que suma y multiplicavanelicciardello
 
computacion I
computacion Icomputacion I
computacion IUNEFM adi
 

La actualidad más candente (12)

Tablas Hash (Sergio García Trapiello)
Tablas Hash (Sergio García Trapiello)Tablas Hash (Sergio García Trapiello)
Tablas Hash (Sergio García Trapiello)
 
Convertidor de bases
Convertidor de basesConvertidor de bases
Convertidor de bases
 
1.1 C2Ruby - ladrillos
1.1 C2Ruby - ladrillos 1.1 C2Ruby - ladrillos
1.1 C2Ruby - ladrillos
 
Tablas Hash
Tablas HashTablas Hash
Tablas Hash
 
Tabla Hash (Guillermo Cueva Fernández)
Tabla Hash (Guillermo Cueva Fernández)Tabla Hash (Guillermo Cueva Fernández)
Tabla Hash (Guillermo Cueva Fernández)
 
Mi primer gráfico
Mi primer gráficoMi primer gráfico
Mi primer gráfico
 
Colas 1er ejercicio
Colas 1er ejercicioColas 1er ejercicio
Colas 1er ejercicio
 
Tablas hash (Sergio Esturillo Cenizo)
Tablas hash (Sergio Esturillo Cenizo)Tablas hash (Sergio Esturillo Cenizo)
Tablas hash (Sergio Esturillo Cenizo)
 
Ejer
EjerEjer
Ejer
 
Tablas Hash (Roberto Cancio González)
Tablas Hash (Roberto Cancio González)Tablas Hash (Roberto Cancio González)
Tablas Hash (Roberto Cancio González)
 
Programa que suma y multiplica
Programa que suma y multiplicaPrograma que suma y multiplica
Programa que suma y multiplica
 
computacion I
computacion Icomputacion I
computacion I
 

Destacado (14)

Union y concatenacion
Union y concatenacionUnion y concatenacion
Union y concatenacion
 
Professional Gambling
Professional GamblingProfessional Gambling
Professional Gambling
 
Pila
PilaPila
Pila
 
E-GADGETS by avneet loyal
E-GADGETS by avneet loyalE-GADGETS by avneet loyal
E-GADGETS by avneet loyal
 
Dahman abdul azis
Dahman abdul azisDahman abdul azis
Dahman abdul azis
 
presentazione
presentazionepresentazione
presentazione
 
Professional Gambling
Professional GamblingProfessional Gambling
Professional Gambling
 
Kata pengantar
Kata pengantarKata pengantar
Kata pengantar
 
William Wordsworth by Avneet Loyal
William Wordsworth by Avneet LoyalWilliam Wordsworth by Avneet Loyal
William Wordsworth by Avneet Loyal
 
تدريب من أجل التشغيل
تدريب من أجل التشغيلتدريب من أجل التشغيل
تدريب من أجل التشغيل
 
Core Synergetics Presentation 2016-17-V3
Core Synergetics Presentation 2016-17-V3Core Synergetics Presentation 2016-17-V3
Core Synergetics Presentation 2016-17-V3
 
Sino-Mold(Molds, plastic, machining)
Sino-Mold(Molds, plastic, machining) Sino-Mold(Molds, plastic, machining)
Sino-Mold(Molds, plastic, machining)
 
SinoTech Catalog.
SinoTech Catalog.SinoTech Catalog.
SinoTech Catalog.
 
Sino mold -new factory view 2016
Sino mold -new factory view 2016Sino mold -new factory view 2016
Sino mold -new factory view 2016
 

Último

Tipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdfTipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdfCarlosSanchez452245
 
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxTECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxUPSE
 
El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)Samuel Solís Fuentes
 
Modelado de Casos de uso del negocio
Modelado de  Casos  de  uso  del negocioModelado de  Casos  de  uso  del negocio
Modelado de Casos de uso del negocioMagemyl Egana
 
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptxCIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptxalzabenjaminci00
 
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfTECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfUPSE
 
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptxCiberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptxcorreafrancoci00
 
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...juanforero141
 
Especificación casos de uso del negocio
Especificación  casos de uso del negocioEspecificación  casos de uso del negocio
Especificación casos de uso del negocioMagemyl Egana
 

Último (9)

Tipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdfTipos de datos en Microsoft Access definiciones.pdf
Tipos de datos en Microsoft Access definiciones.pdf
 
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptxTECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
TECNOLOGIA DE LA INFORMACION Y MULTIMEDIA 15 MAYO.pptx
 
El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)El necesario mal del Legacy Code (Drupal Iberia 2024)
El necesario mal del Legacy Code (Drupal Iberia 2024)
 
Modelado de Casos de uso del negocio
Modelado de  Casos  de  uso  del negocioModelado de  Casos  de  uso  del negocio
Modelado de Casos de uso del negocio
 
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptxCIBERSEGURIDAD  Y SEGURIDAD INFORMÁTICA.pptx
CIBERSEGURIDAD Y SEGURIDAD INFORMÁTICA.pptx
 
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdfTECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
TECNOLOGÍA DE LA INFORMACIÓN SLIDESHARE INVESTIGACION.pdf
 
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptxCiberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
Ciberseguridad y Seguridad Informática Franco Correa Grupo B.pptx
 
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
serenidad APP presentacion.pdfes una innovadora aplicación móvil diseñada par...
 
Especificación casos de uso del negocio
Especificación  casos de uso del negocioEspecificación  casos de uso del negocio
Especificación casos de uso del negocio
 

Arbol binario

  • 1. ARBOL BINARIO Código: #include <iostream> #include <cstdlib> using namespace std; struct nodo{ int nvo; struct nodo *izq, *der; }; typedef struct nodo *AB; AB crearNodo(int x){ AB nuevoNodo = new(struct nodo); nuevoNodo->nvo = x; nuevoNodo->izq = NULL; nuevoNodo->der = NULL; return nuevoNodo; } void insertar(AB &arbol, int x){ if(arbol==NULL){ arbol = crearNodo(x); } else if(x < arbol->nvo) insertar(arbol->izq, x); else if(x > arbol->nvo) insertar(arbol->der, x); } void preOrden(AB arbol){ if(arbol!=NULL){ cout << arbol->nvo <<" "; preOrden(arbol->izq); preOrden(arbol->der); } } void enOrden(AB arbol){ if(arbol!=NULL){ enOrden(arbol->izq); cout << arbol->nvo << " "; enOrden(arbol->der); } }
  • 2. void postOrden(AB arbol){ if(arbol!=NULL){ postOrden(arbol->izq); postOrden(arbol->der); cout << arbol->nvo << " "; } } void mostrarArbol(AB arbol, int n){ if(arbol==NULL) return; mostrarArbol(arbol->der, n+1); for(int i=0; i<n; i++) cout<<"--->"; cout<< arbol->nvo <<endl; mostrarArbol(arbol->izq, n+1); } int main(){ AB arbol = NULL; int n; int x; cout << "ntt CONTRUCCION Y RECORRIDOS DE UN ARBOL BINARIO nn"; cout << " Inserte el numero de nodos del arbol: "; cin >> n; cout << endl; for(int i=0; i<n; i++){ cout << " Numero del nodo " << i+1 << ": "; cin >> x; insertar( arbol, x); } cout << "n Este es el esquema del arbol: nn"; mostrarArbol( arbol, 0); cout << "n Los recorridos del arbol son: "; cout << "nn En orden: "; enOrden(arbol); cout << "nn Pre Orden: "; preOrden(arbol); cout << "nn Post Orden: "; postOrden(arbol); cout << endl; system("pause");