|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
31.12.2008, 16:03 | #1 |
Пользователь
Регистрация: 26.12.2008
Сообщений: 73
|
Генератор перестановок
Необходимо создать модуль, который будет генерировать все возможные перестановки элементов некоторого множества.
Поиск привел на такие источники: Генерация перестановок в антилексикографическом порядке (на Си и на Прологе) Генераторы перестановок Размещение (Wiki) но в них либо теория, либо готовые решения на языках программирования, отличных от VBA Может кто-то сможет интерпретировать коды в VBA? Или хотя бы подскажите алгоритм, код сам напишу. Например: есть множество из 4х чисел: 1,2,3,4. Необходимо сгенерировать все возможные их размещения, при этом каждое число должно присутствовать в варианте 1 раз. Вот такой результат должен получиться: Код:
Четко сформулированная задача - половина решения!
<= Спасибо оставляем в отзывах Последний раз редактировалось cent; 31.12.2008 в 16:21. |
02.01.2009, 10:40 | #2 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Попробуйте такой вариант:
Код:
Есть и другие, более эффективные и быстрые алгоритмы. Но для строк небольшой длины и этот работает неплохо. Если Вам нужно получить только уникальные перестановки, (например, для такого варианта) Код:
Код:
|
02.01.2009, 11:09 | #3 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
По поводу нужных алгоритмов - в Интернете их множество (в том числе и на VB) Но для решения данной задачи лучше использовать алгоритмы без рекурсии, - такие как, например, этот Осталось только найти аналог этого кода на VB. Готовые алгоритмы можно поискать здесь Я же взял за основу код из этой темы.
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
Макросы любой сложности на заказ. Мониторинг цен конкурентов Последний раз редактировалось EducatedFool; 15.12.2010 в 20:57. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Генератор паролей | pali4ev | Общие вопросы Delphi | 6 | 24.12.2008 18:54 |
генератор перестановок | Narkotik | Помощь студентам | 4 | 26.11.2008 05:15 |
Генератор?? | Нестер | Софт | 5 | 10.07.2008 13:32 |
Генератор | warlok | Общие вопросы Delphi | 3 | 30.05.2008 00:53 |
поиск кратчайшей сортировки, с минимальным кол-вом перестановок | sad8c | Помощь студентам | 9 | 14.12.2007 10:23 |