Содержание
- 2. Примеры деревьев Генеалогические деревья и организационные диаграммы. Деревья используются при анализе электрических цепей, при представлении структур
- 3. Будем определять дерево как конечное множество Т, состоящее из одного или более узлов, таких, что: имеется
- 4. Каждый узел дерева является корнем некоторого поддерева, которое содержится в этом дереве. Число поддеревьев данного узла
- 5. Бинарное дерево – это дерево, в котором каждый узел имеет не более двух поддеревьев. В этом
- 6. Примеры Дерево двоичного поиска Однако условие идеального сбалансирования для этого дерева не выполняется: для узла со
- 7. На C++ бинарное дерево можно представить следующим образом: struct tree { int inf; tree *left, *right;
- 8. Обходы бинарных деревьев Обойти дерево – это побывать в каждом из его узлов точно по одному
- 9. б) Симметричный обход: пройти левое поддерево данного корня; попасть в корень; пройти правое поддерево данного корня.
- 10. в) Обратный обход: пройти левое поддерево данного корня; пройти правое поддерево данного корня; попасть в корень.
- 11. Операции с деревьями бинарного поиска: Построение дерева Рассмотрим подпрограмму add (int x, tree *&root), которая добавляет
- 12. Построение дерева бинарного поиска void add (int x, tree *&root) { if (!root) { root =
- 13. Поиск по дереву Рассмотрим подпрограмму search (int x, tree *root), предназначенную для поиска и вывода данного
- 14. Поиск по дереву void search (int x, tree *root) { if (!root) cout else if (x
- 15. Операции с идеально сбалансированными деревьями Построение дерева Рассмотрим подпрограмму create (int number, tree *&root), которая используется
- 16. Построение идеально сбалансированного дерева void create (int number, tree *&root) { int a; if (number >
- 18. Скачать презентацию