Я знаю, что этот вопрос задан раньше, особенно на этом веб-сайте, но я видел сотни ответов, которые просто не удовлетворяли моей потребности. Приношу свои извинения за задание такого родового вопроса.Реализация Solid Tree C++ ntree
Мне нужна реализация дерева для создания возможных состояний платы для шахматной игры, которую я реализую на C++. Так вот требование:
- только один руководитель узла,
- Несколько (неизвестное количество) дочерние узлы,
- Неизвестной (динамическая) высота дерева
- Дерево не будет сбалансированным, некоторые ветви могут быть отрезаны
Вот данные, которые я хочу хранить:
// A tree's contents will only be composed of this variable
ChessModelConstants::ChessPiece m_gameBoard[8][8];
typedef char PieceType, PieceColor;
//Variable is as follows
struct ChessPiece {
// A simple Constructor with default values
ChessPiece(PieceType pieceType = ChessModelConstants::TYPE_EMPTY,
PieceColor pieceColor = ChessModelConstants::COLOR_WHITE) :
m_pieceType(pieceType), m_pieceColor(pieceColor)
{
}
// Members
PieceType m_pieceType;
PieceColor m_pieceColor;
};
Где я могу найти/реализовать такое дерево? Я бы хотел сказать, что Boost для меня сейчас не вариант. Любые STL или надежная ручная реализация сделают все возможное. Заранее спасибо.
PS: Я нашел this сайт, который я сейчас изучаю.
Я все еще ищу ответ. Спасибо заранее ..... –