Captura:
Codigo:
Arbol.cpp
#include<iostream> #include"arbol.h" using namespace std; void arbol::insertar(tarbol &aux,int v){ if(aux==NULL){ aux=new nodo(v); } else{ if(v<aux->dato){ insertar(aux->izquierda,v); } else{ if(v>aux->dato){ insertar(aux->derecha,v); } } } } void arbol::ind(tarbol aux){ if(aux!=NULL){ ind(aux->izquierda); cout<<" num : "<<aux->dato<<endl; ind(aux->derecha); } } void arbol::nid(tarbol aux){ if(aux!=NULL){ cout<<" num : "<<aux->dato<<endl; nid(aux->izquierda); nid(aux->derecha); } } void arbol::idn(tarbol aux){ if(aux!=NULL){ idn(aux->izquierda); idn(aux->derecha); cout<<" num : "<<aux->dato<<endl; } } int main(){ arbol a; cout<<"Datos: 5,4,2,6,7"<<endl<<endl; a.insertar(a.miarbol,5); a.insertar(a.miarbol,4); a.insertar(a.miarbol,2); a.insertar(a.miarbol,6); a.insertar(a.miarbol,7); cout<<"Inorden"<<endl<<endl; a.ind(a.miarbol); cout<<endl<<endl; cout<<"Postorden"<<endl; a.idn(a.miarbol); cout<<endl<<endl; cout<<"Preorden"<<endl; a.nid(a.miarbol); cout<<endl<<endl;fflush(stdin); system("pause"); return 0; }
class nodo{ public: int dato; nodo *izquierda; nodo *derecha; nodo(int v,nodo *iz=NULL,nodo *de=NULL){ dato=v; izquierda=iz; derecha=de; } class arbol; }; typedef nodo *tarbol; class arbol{ public: tarbol miarbol; arbol(){ miarbol=NULL; } void arbol::insertar(tarbol &aux, int v); void ind(tarbol aux); void nid(tarbol aux); void idn(tarbol aux); };
Descarga el codigo desde aqui.