4817
правок
Irina (обсуждение | вклад) |
Irina (обсуждение | вклад) |
||
Строка 34: | Строка 34: | ||
Оптимизация 1: время исполнения алгоритма для специального случая полных деревьев улучшается до O(n log n) следующим образом. Пара вершин (u, v), | Оптимизация 1: время исполнения алгоритма для специального случая полных деревьев улучшается до <math>O(n \; log \; n)</math> следующим образом. Пара вершин (u, v), <math>u \in T_1 \;</math>, <math>v \in T_2 \;</math>, считается интересной, если существует поддерево соответствия, отображающее u на v. Как показано ниже, для полных деревьев общее число интересных пар (u, v) составляет всего <math>O(n \; log \; n)</math>. Рассмотрим вершину v в дереве <math>T_2 \;</math>. Пусть <math>L_2 \;</math> – множество листьев, являющихся потомками v. Пусть <math>L_1 \;</math> – множество тех листьев <math>T_1 \;</math>, которые имеют те же метки, что и листья в <math>L_2 \;</math>. Отображены на v могут быть только вершины u, принадлежащие к поддереву <math>T_1 \;</math>, порожденному <math>L_1 \;</math>. Количество таких вершин составляет O(размер поддерева <math>T_2</math> с корнем в v). Таким образом, общее число интересных пар представляет собой сумму всех поддеревьев <math>T_2 \;</math>, или <math>O(n \; log \; n)</math>. | ||
правок