You are on page 1of 5

// proyecto final.cpp : main project file.

#include "stdafx.h"
#include <stdlib.h>
#include <conio.h>
#include <malloc.h>

using namespace System;

void insert(int v);


void delet(int v);

struct nodo

int valor;
struct nodo*sig;
struct inicio*nuevo;

struct nodo

{
int valor;
struct nodo*izq;
struct nodo*der;

};

struct size

struct nodo*raiz;
struct nodo*obs;
arbol;
};

void insertar(int v);


bool FindKey(int e);
void imprimir(struct nodo*act);

void main()

printf("\tMENU");

arbol=(struct size*)malloc(sizeof(struct size));


arbol->raiz=NULL;
arbol->obs=NULL;

inicio=(struct nodo*)malloc(sizeof(struct nodo));


incio->sig=NULL;
incio->valor=0;

void insert(int v)

struct nodo*nuevo;act;
nuevo=(struct nodo*)malloc(sizeof(structnodo));
nuevo->sig=null;
nuevo->valor=V;
act=inicio;

while(act->sig!=null)
act=act->sig;
act->sig=nuevo;

void delet(int v)

struct nodo*act,ant;
ant=inicio;
act=inicio->sig;

while(act!=null)
{

if(v==act->valor)

{
ant->sig=act->sig;
act->sig=null;
free(act);

break;
}

ant=act;
act=act->sig;
}
}

// ARBOLES //

void insertar(int v)
{

struct nodo*nuevo,*psave;

bool found=false;

psave=arbol->obs;
found=FindKey(v);
if(found)

printf("EL VALOR EXISTE");

arbol->obs=psave;
}

else

nuevo=(struct nodo*)malloc(sizeof(struct nodo));

nuevo->valor=v;
nuevo->izq=NULL;
nuevo->der=NULL;
if(arbol->raiz==NULL)

arbol->raiz=nuevo;
arbol->obs=nuevo;

else

if(v<arbol->obs->valor)
arbol->obs->izq=nuevo;

else

arbol->obs->der=nuevo;
arbol->obs=nuevo;

}
}

bool FindKey(int e)
{

bool found=false;
struct nodo*p;
p=arbol->raiz;

while(found==false&&p!=NULL)

if(e==p->valor)

arbol->obs=p;
found=true;

else
{
if(e<p->valor)
{

if(p->izq==NULL)
arbol->obs=p;
p=p->izq;
}
else
{
if(p->der==NULL)
arbol->obs=p;
p=p->der;
}
}
}

return found;

}
void imprimir(struct nodo*act)

if(act!=NULL)
{
printf("%¡",act->valor);
imprimir(act->izq);
printf("%¡",act->valor);
imprimir(act->der);
printf("%¡",act->valor);
}
}

You might also like