AndreyHudz90
@AndreyHudz90
student

Как найти сумы последовательных узлов в бинарном дереве?

Дано: бинарное дерево (алгоритм дерева написан вручную). Число S.
Нужно найти последовательность узлов (только с вверху вниз или наоборот) в бинарном дереве, сумма которых равна S.

Например: есть бинарное дерево, а число S = 9.
682494d1461411321
Решение: 3+6, 4+5, 9.

п.с. желательно, что бы это был отдельный класс, который имел доступ к классу binTree
#pragma once
class binTree
{
protected:
	struct Node
	{
		int Value;
		Node * pLeft;
		Node * pRight;
		Node * pParent;
		Node(int x) :Value(x), pLeft(NULL), pRight(NULL), pParent(NULL) {}
	};
	Node * m_pRoot;
	void InoderTreeWalk(Node * x);
	Node * TreeSuccessor(Node *x);
	Node * TreeMin(Node * x);
public:
	binTree();
	~binTree();
	virtual void TreeInsert(int k);
	Node * TreeSearch(Node * X, int k);
	void ShowTree();
	int Root();
};
  • Вопрос задан
  • 229 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы