Первый неожиданный результат. Нагрузил дерево 26 картами(мог и 52, это непринципиально)
И первая неприятность: стали возможны комбинации типа ...
ведь из каждого ответвления должно выходить 26 ответвлений...Это раньше я нагружал дерево выборочно, как бы контролируя, чтобы карты не повторялись. А сейчас нагрузка полная. Положив в корень, а потом уровнем ниже я уже не могу не положить и уровнями ниже - всё пойдёт по одному месту.
Ну, а теперь к результату.
Обьясняю на пальцах. Ищем комбинацию МАЙОР(повторяю, дерево полностью нагружено)
Алгоритм №1.
Ищем в корне "букву" М. Для этого идём последовательно от А до М. Делая прыжки внутри уровня и сравнивая содержимое узла с "буквой" для поиска. М с А, М с Б, М с В, и т.д. Нашли?
Спускаемся на уровень ниже.
Ищем от А до А. Нашли?
Спускаемся на уровень ниже.
Ищем от А до Й. Нашли?
и т.д.
Алгоритм №2.
Прыгаем по ответвлениям 14 раз (сразу туда, где "буква" М)
Спускаемся на уровень ниже.
Прыгаем 0 ответвлений("буква" А)
Спускаемся на уровень ниже.
Прыгаем 11 ответвлений("буква" Й)
и т.д.
Парадоксальным образом оказалось, что алгоритмы работают одинаково по скорости.
Так как я уже немного утомился, предлагаю вам решить дальнейшие действия:
1. Быть такого не может, проверь ещё раз
2. Работай по старым алгоритмам, быстрее дойдёшь до результата
3. Перепиши так, чтобы задействовать рёбра. Тогда прыгать будет не надо, будешь сразу переходить по нужному ребру.
Я - спать. А вы оставьте пост с цифрой от 1 до 3.
это понятно но причем тут префиксное дерево и решение китайского покера , в чем твой алгоритм решения заключается ?
дерево или HR или полный массив в памяти ... это абсолютно бестолковые вещи если нет алгоритма решения ...