Implementação da árvore binária C ++
Inserção da árvore binária:
#include "stdafx.h"
#include <iostream>
using namespace std;
struct TreeNode {
int value;
TreeNode* left;
TreeNode* right;
};
struct TreeType {
TreeNode* root;
void insert(TreeNode* tree, int item);
void insertItem(int value) {
insert(root, value);
}
};
void TreeType::insert(TreeNode* tree, int number) {
if (tree == NULL) {
tree = new TreeNode;
tree->left = NULL;
tree->right = NULL;
tree->value = number;
cout << "DONE";
} else if (number < tree->value) {
insert(tree->left, number);
} else {
insert(tree->right, number);
}
}
int main() {
TreeType* MyTree = new TreeType;
MyTree->insertItem(8);
return 0;
}
Atualmente estou aprendendo estruturas de dados em C ++ e este é o código que faz a inserção em árvores binárias.
Depois que ele é compilado, tudo parece bem, no entanto, quando eu tento executar este programa, ele caiu.
Alguém pode me dizer onde estou errado?