Buenas tardes,
Llevó todo el dia peleandome con una clase, para implementar arboles binarios, el codigo es el siguiente:
//Archivo Tree.cpp
//Codigo Tree.cpp
Primer problema, visual studio me dice que root no se puede comparar con NULL, entonces como puedo saber si un hijo esta vacio???
Segundo problema, nose com implementar la función de insertar. Se que esta mal porque estoy llamando desde un nodo, un metodo que no existe y que tiene arbol.
Nose, tengo ya los nervios a flor de piel y lo siguiente que haré sera amenazar mi portatil con una tostadora xD
Llevó todo el dia peleandome con una clase, para implementar arboles binarios, el codigo es el siguiente:
//Archivo Tree.cpp
Código (cpp) [Seleccionar]
struct Node {
int info;
Node *fesq;
Node *fdre;
};
class Tree {
private:
Node *root;
public:
Tree(int);
void insertar(int);
void plantar(int, Node &, Node&);
};
//Codigo Tree.cpp
Código (cpp) [Seleccionar]
Tree::Tree(int value) {
root->info = value;
root->fesq = NULL;
root->fdre = NULL;
}
void Tree::plantar(int value, Node & f1, Node & f2) {
root->info = value;
root->fesq = f1;
root->fdre = f2;
}
void Tree::insertar(int value) {
if (root ==NULL) {
root->info = value;
root->fesq = NULL;
root->fdre = NULL;
}
else if(x < root->info) root->fesq.insertar(x);
else if(x > root->info) root->fdre.insertar(x);
}
Primer problema, visual studio me dice que root no se puede comparar con NULL, entonces como puedo saber si un hijo esta vacio???
Segundo problema, nose com implementar la función de insertar. Se que esta mal porque estoy llamando desde un nodo, un metodo que no existe y que tiene arbol.
Nose, tengo ya los nervios a flor de piel y lo siguiente que haré sera amenazar mi portatil con una tostadora xD