#include <iostream>
#include "BinTree.h"


int main( ) try {

    std::cout << "Hello, World!" << std::endl;
    BinTree first = BinTree();

    first.nodeInsert('D');
    first.nodeInsert('G');
    first.nodeInsert('A');
    first.nodeInsert('L');
    first.nodeInsert('C');
    first.nodeInsert('B');
    first.nodeInsert('A');
    first.nodeInsert('L');
    first.nodeInsert('L');


    std::cout << "In Oder: ";

    first.inOrder(first.getRoot());
    std::cout << std::endl;
    char k = first.find('A', first.getRoot());
//    std::cout << "Find L: " <<  first.find('A', first.getRoot())->value << " " << "Anzahl im Baum: "
//              << first.find('A', first.getRoot())->count << std::endl;
    std::cout << k;
    std::cout << "Level Oder: ";
    first.levelOder(first.getRoot());
    std::cout << std::endl;

//    std::cout << "Level is: " << first.countNode(first.findValue('A')) << std::endl;

    return 0;
}
catch( std::exception &e ) {
    std::cerr << e.what( );
    return -2;
}
catch( ... ) {
    std::cerr << "Ein Fehler";
    return -1;
}