Files
ADS/P1/ADS_P1_2_Binaerbaum/Tree.h
2025-02-21 13:17:35 +01:00

36 lines
996 B
C++
Executable File

/*************************************************
* ADS Praktikum 1.2
* Tree.h
* Erweiterung um Hilfsattribute und -funktionen gestattet, wenn erforderlich.
*************************************************/
#pragma once
#include "TreeNode.h"
#include "catch.h"
#include <string>
using namespace std;
class Tree {
private:
TreeNode* m_anker = nullptr;
int currentNodeChronologcalID = 0;
public:
Tree();
~Tree();
void addNode(std::string Name, int Age, double Income, int PostCode);
bool deleteNode(int NodeOrderID);
bool searchNode(std::string Name);
void printAll();
void printNode(TreeNode* node);
void printPreOrder(TreeNode* ptr);
void printPostOrder(TreeNode* ptr);
void printInOrder(TreeNode* ptr);
void printLevelOrder();
TreeNode* getAnker();
void setAnker(TreeNode* _anker);
// friend-Funktionen sind für die Tests erforderlich und müssen unangetastet
// bleiben!
friend TreeNode* get_anker(Tree& TN);
};