У меня в настоящее время есть анаграмма-решатель на моем сайте, который работает хорошо и быстро.Лучшая практика для реализации пустого поиска плитки для решения анаграммы
Я использую структуру массива, чтобы удерживать числовые значения каждой буквы, используемые в каждом слове. Таким образом, в основном, когда кто-то вводит буквы «fghdywkjd», мой решатель будет проходить каждое слово в своем db и сопоставлять количество букв в каждом слове с значениями, связанными с введенным буквой, т.е. «Fghdywkjd»
Я строю массив как этот
$a = array('a' => 1, 'b' => 1, 'c' => 1, 'd' => 1, 'e' => 1, 'f' => 1, 'g' => 1, 'h' => 1, 'i' => 1, 'j' => 1, 'k' => 1, 'l' => 1, 'm' => 1, 'n' => 1, 'o' => 1, 'p' => 1, 'q' => 1, 'r' => 1, 's' => 1, 't' => 1, 'u' => 1, 'v' => 1, 'w' => 1, 'x' => 1, 'y' => 1, 'z' => 1);
Он подсчитывает значения, как она проходит через каждое слово.
Я пытаюсь придумать лучший способ добавить к нему пустую особенность плитки, которая не замедлит ее.
Единственный способ, которым я могу понять, как добавить эту функцию, - это подождать, пока у меня не будет всех моих результатов, затем возьмите каждое найденное слово и добавьте букву «a» и найдите возможности, затем добавьте последнее «b» и так далее на. Для каждого слова, которое было бы огромным.
В любом случае, некоторые идеи?
Великие мысли думают одинаково :) Моя структура таблицы в точности такова: я ввел ваш код с небольшим исправлением. = Вместо just =. Использование набора слов работало отлично, за исключением того, что оно только вытягивало возможные слова с помощью SET в нем плюс еще один, так что это были всего лишь 4 буквенных слова. Как насчет того, чтобы вытащить каждое возможное слово «SET», можно сочетать с добавлением диких карточных слов? –
это будет включать от 2 до 12 буквенных слов. Btw –
Возможно, вам придется изменить $ numberOfWildcards на $ maxWildcards, а затем изменить WHERE и HAVING как '<=' вместо '=' – chrislondon