|
|
Другие темы раздела | |
C++ Вычислить периметр и площадь прямоугольного треугольника по двум катетам
https://www.cyberforum.ru/ cpp-beginners/ thread1447119.html 5) Вычислить периметр и площадь прямоугольного треугольника по двум катетам. Результат вывести на экран с пояснительным текстом. |
C++ Определить принадлежит ли точка окружности 4) Определить принадлежит ли точка с координатами x, y окружности радиус которой r , а координаты центра а и в. Если точка принадлежит окружности определить какое из расстояний наименьшее: от точки до центра окружности от точки до начала координат, от центра окружности до начала координат. |
C++ Вывести на экран длину стороны треугольника
https://www.cyberforum.ru/ cpp-beginners/ thread1447117.html 3) Даны длины трех сторон треугольника x, y, z. Если площадь этого треугольника больше 100, вывести на экран длину наибольшей стороны, иначе вывести длину наименьшей стороны. |
C++ Вычислить сумму всех натуральных чисел, кратных трем, не превосходящих заданного N, не используя массивы 2) Вычислить сумму всех натуральных чисел, кратных трем, не превосходящих заданного N, не используя массивы. https://www.cyberforum.ru/ cpp-beginners/ thread1447116.html |
Составить программу вывода на экран всех кубов натуральных чисел, не превосходящих заданного N, не используя C++ 1) Составить программу вывода на экран всех кубов натуральных чисел, не превосходящих заданного N, не используя массивы. Ребят, помогите, пожалуйста, кто с чем может. С С++ совсем печально... |
C++ Комментарии к програме
https://www.cyberforum.ru/ cpp-beginners/ thread1447105.html Кому не сложно можете написать комментарии к программе? #include<iostream> #include<cstdlib> using namespace std; class client {public: client(){} ~client(){"Destruct.";} |
C++ Задача об оптимальном представлении
https://www.cyberforum.ru/ cpp-beginners/ thread1447089.html Доброго времени суток. Встретил такую задачу. И не знаю, как её решить. Вот условие. В одной стране все номера имеют длину 5 символов. Каждый символ номера является либо одной из 30 заглавных букв, или одной из 10 десятичных цифр. Укажите вариант, при котором 50 таких автомобильных номеров можно представить за наименьшее кол-во байт. Все номера представляются одинаковым кол-вом бит. ... |
Найти слова с наибольшим вхождением заданного символа C++ Даны буква и текст, заканчивающийся точкой. Вывести слова в которых эта буква встречается наибольшее количество раз(если таких слов несколько , то вывести все). Очень срочно и очень важно Пожалуйста помогите !! я сделал что то похожий но не то: #include <iostream> #include <string> using namespace std; |
C++ Нужно описать класс «множество» Привет всем. Недавно начал изучать классы и решаю одну задачу. Нужно описать класс «множество», позволяющий выполнять основные операции — добавление и удаление элемента, пересечение, объединение и разность множеств. Ну я в классе создал все методы, но пока написал только первые 2 функции и решил проверить. Вот код: Множества.h #ifndef MNOZHESTVO_H #define MNOZHESTVO_H #include <vector>... https://www.cyberforum.ru/ cpp-beginners/ thread1447080.html |
C++ Сформировать вектор из максимумов матрицы и упорядочить его по возрастанию
https://www.cyberforum.ru/ cpp-beginners/ thread1447077.html Разработать алгоритм и написать программу на языке C++. Задана матрица (двумерный массив) A размером N x М , состоящая из действительных элементов. Числа M и N вводятся с клавиатуры. Для задания исходной матрицы предусмотреть ввод с клавиатуры или ввод с помощью датчика случайных чисел. Где это необходимо ввести квадратную матрицу. Во всех вариантах вывести исходную матрицу в общепринятом... |
C++ Определить число вхождений символов в предложение Дано предложение. Определить: а) число вхождений в него буквосочетания "ро"; б) число вхождений в него некоторого буквосочетания из двух букв; в) число вхождений в него некоторого буквосочетания. |
C++ Переписать в новый массив с нечетными порядковыми номерами и вывести размер полученного массива содержимое Здравствуйте, пожалуйста, помогите с программами((( Завтра нужно сдать отчеты, а я совсем не знаю С++((( Условие 2 программы! Дан целочисленный массив А размером N(<=15). Переписать в новый целочисленный массив В с нечетными порядковыми номерами (1,3...) и вывести размер полученного массива В и его содержимое. Условный оператор не использовать. Бужу ооочень благодарен) https://www.cyberforum.ru/ cpp-beginners/ thread1447070.html |
88 / 84 / 31
Регистрация: 18.11.2013
Сообщений: 390
|
|
15.05.2015, 12:00 | 0 |
Балансировка дерева - C++ - Ответ 761775415.05.2015, 12:00. Показов 7540. Ответов 1
Метки (Все метки)
Ответ Кликните здесь для просмотра всего текста
Всегда желательно, чтобы все пути в дереве от корня до листьев имели примерно одинаковую длину, то есть чтобы глубина и левого, и правого поддеревьев была примерно одинакова в любом узле. В противном случае теряется производительность. В вырожденном случае может оказаться, что все левое дерево пусто на каждом уровне, есть только правые деревья, и в таком случае дерево вырождается в список (идущий вправо). Поиск (а значит, и удаление и добавление) в таком дереве по скорости равен поиску в списке и намного медленнее поиска в сбалансированном дереве. Для балансировки дерева применяется операция «поворот дерева». Поворот налево выглядит так: AVL LR.GIF было Left(A) = L, Right(A) = B, Left(B) = C, Right(B) = R поворот меняет местами A и B, получая Left(A) = L, Right(A) = C, Left(B) = A, Right(B) = R также меняется в узле Parent(A) ссылка, ранее указывавшая на A, после поворота она указывает на B. Поворот направо выглядит так же, достаточно заменить в вышеприведенном примере все Left на Right и обратно. Достаточно очевидно, что поворот не нарушает упорядоченность дерева, и оказывает предсказуемое (+1 или −1) влияние на глубины всех затронутых поддеревьев. Для принятия решения о том, какие именно повороты нужно совершать после добавления или удаления, используются такие алгоритмы, как «красно-чёрное дерево» и АВЛ. Оба они требуют дополнительной информации в узлах — 1 бит у красно-черного или знаковое число у АВЛ. Красно-черное дерево требует <= 2 поворотов после добавления и <= 3 после удаления, но при этом худший дисбаланс может оказаться до 2 раз (самый длинный путь в 2 раза длиннее самого короткого). АВЛ-дерево требует <= 2 поворотов после добавления и до глубины дерева после удаления, но при этом идеально сбалансировано (дисбаланс не более, чем на 1). Википедия, не? Вернуться к обсуждению: Балансировка дерева C++
0
|
15.05.2015, 12:00 | |
Готовые ответы и решения:
1
Балансировка бинарного дерева Балансировка игроков Красно черное дерево. Добавление и балансировка элементов. Исправить ошибку Запись бинарного дерева в файл и восстановление из него этого дерева |
15.05.2015, 12:00 | |
15.05.2015, 12:00 | |
Помогаю со студенческими работами здесь
0
Написать шаблон бинарного дерева с функцией распечатки дерева Вывод бинарного дерева на экран в виде "дерева" Балансировка AVL дерева Балансировка двоичного дерева |