Dus ik ben een poging om te leren hoe ik mijn eerste BST coderen, en het is moeilijk .... Ik ben al problemen met slechts een paar regels code. het probleem is in de insert, maar ik heb alles opgenomen, zodat ik wat feedback op mijn stijl / andere fouten kunnen krijgen. Ik werd voorgesteld om een pointer naar implementatie pointer gebruiken, maar we havent leerden nog niet, dus voel ik niet troost / weten hoe het nog te coderen. de
fout
cc1plus: warnings being treated as errors
tree.cpp: In member function âbool Tree::insert(Tree::Node*&, int, std::string)â:
tree.cpp:34: warning: control reaches end of non-void function
de tree.h bestand
#ifndef TREE_H
#define TREE_H
#include <iostream>
#include <string>
using namespace std;
class Tree
{
public:
Tree();
bool insert(int k, string s);
private:
struct Node
{
int key;
string data;
Node* left;
Node* right;
};
Node* root;
bool insert(Node*& root, int k, string s);
};
#endif
tree.cpp
#include <iostream>
#include tree.h
#include <stack>
#include <queue>
#include <string>
using namespace std;
Tree::Tree()
{
root = NULL;
}
bool Tree::insert(int k, string s)
{
return insert(root, k, s);
}
bool Tree::insert(Node*& currentRoot, int k, string s)
{
if(currentRoot == NULL){
currentRoot = new Node;
currentRoot->key = k;
currentRoot->data = s;
currentRoot->left = NULL;
currentRoot->right = NULL;
return true;
}
else if (currentRoot->key == k)
return false;
else if (currentRoot->key > k)
insert(currentRoot->left, k, s);
else
insert (currentRoot->right,k, s);
}
movieList.cpp
#include <iostream>
#include <stack>
#include <queue>
#include <string>
#include tree.h
using namespace std;
int main()
{
Tree test;
test.insert(100, blah);
return 0;
}













