Algorithmen_Datenstrukturen/Uebung 6/Uebung6_2/ExtendedBinaryTree.h

33 lines
1.1 KiB
C++

#include "ExtendedBinaryTreeNode.h"
#include <sstream>
#include <string>
#pragma once
class ExtendedBinaryTree {
public:
ExtendedBinaryTreeNode *rootNode;
ExtendedBinaryTree(Ware *rootNodeKey, int priority);
ExtendedBinaryTreeNode *search(int value);
ExtendedBinaryTreeNode *insert(Ware *key, int priority);
ExtendedBinaryTreeNode *deleteItem(Ware *key);
ExtendedBinaryTreeNode *findMin(ExtendedBinaryTreeNode *node);
ExtendedBinaryTreeNode *findMax(ExtendedBinaryTreeNode *node);
std::string printPreorder(ExtendedBinaryTreeNode *node);
std::string printPreorder();
std::string printPostorder(ExtendedBinaryTreeNode *node);
std::string printPostorder();
std::string printInorder(ExtendedBinaryTreeNode *node);
std::string printInorder();
std::string printPriority();
std::string printPriority(ExtendedBinaryTreeNode *node, int max);
std::string printPriorityBruteForce();
std::string printPriorityBruteForce(ExtendedBinaryTreeNode *node, int max);
};
// std::string printPreorder(BinaryTreeNode* node);
// /* -- Your TODO -- */
// std::string printPostorder(BinaryTreeNode* node);
// std::string printInorder(BinaryTreeNode* node);