Этот вопрос относится к моему вопросу here. Я пытаюсь получить следующий подсчет программно, чтобы проверить правильность моей математики.Количество аранжировок без последовательной буквы то же самое
Сколько расположения букв в слове PQRDDDEEEEFFFFF нет без какого-либо последовательного письма того же самое?
Как определить этот счет с помощью php-программы?
Мой подход
- генерироваться все возможные перестановки с помощью алгоритма кучного и хранится в массиве (алгоритм, используемый кучного как он найден быстрее)
- удалены все дубликаты с помощью array_unique функции
- Итерации по массиву идентифицировали строки, в которых смежные буквы одинаковы, используя regexp/(.)\1/ и скопировали строки, в которых смежные буквы не совпадают с новым массивом.
- Новый массив имеет список элементов, который требуется.
Мой подход работает нормально. Но для больших строк (строки более 10 символов) проблемы памяти возникают из-за большого количества перестановок, поэтому программа не работает.
Есть ли альтернативный подход для определения этого программного обеспечения?
Примечание:
Ищу графа только и не список строк
PHP не может быть лучшим вариантом что-то вроде этого – scottevans93
@ scottevans93, у предложить какой-либо другой язык, чтобы справиться с этим? – Kiran