Несмотря на то, что тема поста относится больше не к программированию, а к математике, определение всех перестановок в массиве (неважно какого типа) может потребоваться и при работе в Интернет. Простой пример - определть все возможные названия сайтов, составленных из 3 ключевых слов. Или провести синонимизацию какого-либо участа текста, используя заданные массивы слов-синонимов. Что касается количества перестановок, то тут все просто - количество перестановок будет равно факториалу количества элементов в массиве, т.е., если у нас есть массив M, то количество перестановок k будет равно:
k = Length(M)!
для трехэлементного массива k=1*2*3=6
для четырех элементов: k=1*2*3*4=24 и т.д.
Осталось только вывести все возможные перестановки.
Читать далее »
Наши проекты
Delphi+Google
Chrono
ODFProc
Поддержка блога
А тут я коплю на лицензию Delphi XE на iPad =).
Сумма пожертвования не фиксирована.
Публикации
Год назад
Случайный пост
Последние
Сообщения форума
Комментарии
Опрос
Список публикаций с меткой: алгоритм
Статьи с меткой алгоритм содержат общие принципы, примеры реализации, и описание различных алгоритмов обработки данных в Delphi. Метка алгоритм является наиболее общей для статей подобного плана в блоге WebDelphi.
В прошлый раз мы строили дерево TreeView по данным из XML-документа. Сегодня проведем обратное преобразование - сохраним дерево TreeView любой сложности в XML-файл, чтобы довести работу до логического завершения. Раз научились читать документ - надо научиться его и правильно сохранять.
Для решеня этой задачи вы можете воспользоваться как прошлым примером и уже имеющимся списком узлов TNodeList, так и процедурой, которую мы рассмотрим в этом посте.
Читать далее »
Сегодня я хотел бы поделиться с Вами ещё одним алгоритмом - подсветкой синтаксиса (или другого текста).
Как Вы, наверное, могли заметить в своем блоге я стараюсь связать теорию с практикой. Например, алгоритм облака тегов на Delphi я сейчас использую в программе "Блевантон" и т.д. Алгоритм подсветки синтаксиса тоже не исключение - он используется в новой версии моего детища.
Итак, пусть перед нами стоит задача - сделать простенький редактор с подсветкой синтаксиса. Для примера возьмем язык SQL. Самым подходящим для этой цели компонентом является TRichEdit - прост в использовании и имеет все возможности для работы с текстом. Читать далее »
Сегодня рассмотрим интересную тему - разработка облака тэгов на Delphi. Дело в том, что в Интернет полно разного рода php- и js-скриптов по этой теме, а вот до Delphi руки особо у программистов не доходят. Между тем облака тэгов широко используются в программных продуктах, например в блог-клиентах и знание о том, как эти облака строятся будут далеко не лишними.

Прежде, чем приступать к разработке, обратимся к wiki что бы уяснить, что из себя представляет облако тэгов: Читать далее »
Эта статья будет полезна в первую очередь тем, кто часто имеет дело со сравнением и анализом строковых переменных. Также, думаю, что этот алгоритм смогут использовать в своей работе и люди, занимающиеся парсингом.
Цель: найти в двух строках самую длинную повторяющуюся подстроку.









Свежие комментарии