#pragma once
#include "List.h"
template
struct Node
{
T* m_pPayload;
Node* m_pParent;
List m_Children;
};
template
struct Tree
{
Node* m_pRoot;
};
typedef bool (*NodeComparator)(void* pValue, void* pPayload);
/*
struct Person
{
int id;
};
bool Comp(void* pValue, void* pPayload)
{
Person* pVal = (Person*)pValue;
Person* pPay = (Person*)pPayload;
if (pVal->id == pPay->id)
return true;
else
return false;
}*/
template
void AppendChild(Node* pParent, Node* pNode);
template
Node* FindNode(Node* pParent, T* value, NodeComparator comparator);
Используя файл заголовка выше, реализовать обе функции и пример программы, создающей гениалогическое дерево.
| Гарантия на работу | 1 год |
| Средний балл | 4.53 |
| Стоимость | Назначаете сами |
| Эксперт | Выбираете сами |
| Уникальность работы | от 70% |