Перестановки символов

22.05.13

Разработка - Математика и алгоритмы

Обработка решает задачу: получить из заданной строки символов все возможные их сочетания (перестановки).

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
(только для физ. лиц)
ПерестановкиСимволов.epf
.epf 6,54Kb
11 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Обработка показывает как в рекурсии решить задачу задачу: получить из заданной строки символов все возможные их сочетания (перестановки). Строка в обработке ограничена 10 символами. Вывод в окно сообщений. Пример на картинке.

Обработка перед выводом собирает результаты в массив, поэтому на словах больше 10 символов может закончиться доступная память. На сайте есть пример более экономно расходующий память.

См. также

Математика и алгоритмы Программист 1C v8.2 1C:Бухгалтерия Россия Абонемент ($m)

На написание данной работы меня вдохновила работа @glassman «Переход на ClickHouse для анализа метрик». Автор анализирует большой объем данных, много миллионов строк, и убедительно доказывает, что ClickHouse справляется лучше PostgreSQL. Я же покажу как можно сократить объем данных в 49.9 раз при этом: 1. Сохранить значения локальных экстремумов 2. Отклонения от реальных значений имеют наперед заданную допустимую погрешность.

1 стартмани

30.01.2024    8731    stopa85    12    

42

Математика и алгоритмы Бесплатно (free)

Разработка алгоритма, построенного на модели симплекс-метода, для нахождения оптимального раскроя.

19.10.2023    14955    user1959478    57    

37

Математика и алгоритмы Разное 1С v8.3 1C:Бухгалтерия Россия Абонемент ($m)

Расширение (+ обработка) представляют собою математический тренажер. Ваш ребенок сможет проверить свои знание на математические вычисление до 100.

2 стартмани

29.09.2023    8411    maksa2005    8    

27

Математика и алгоритмы Инструментарий разработчика Программист 1С v8.3 Мобильная платформа Россия Абонемент ($m)

Что ж... лучше поздно, чем никогда. Подсистема 1С для работы с регулярными выражениями: разбор выражения, проверка на соответствие шаблону, поиск вхождений в тексте.

1 стартмани

09.06.2023    16488    10    SpaceOfMyHead    20    

63

Математика и алгоритмы Программист 1С v8.3 1C:Бухгалтерия Бесплатно (free)

Три задачи - три идеи - три решения. Мало кода, много смысла. Мини-статья.

03.04.2023    9736    RustIG    9    

29

Механизмы платформы 1С Математика и алгоритмы Программист 1С v8.3 Россия Бесплатно (free)

В статье анализируются средства платформы для решения системы линейных уравнений в 1С. Приводятся доводы в пользу некорректной работы встроенных алгоритмов, а значит потенциально некорректного расчета себестоимости в типовых конфигурациях.

23.11.2022    8879    gzharkoj    15    

26

Математика и алгоритмы Программист 1С v8.3 Россия Абонемент ($m)

Обычно под распределением понимают определение сумм пропорционально коэффициентам. Предлагаю включить сюда также распределение по порядку (FIFO, LIFO) и повысить уровень размерности до 2-х. 1-ое означает, что распределение может быть не только пропорциональным, но и по порядку, а 2-ое - это вариант реализации матричного распределения: по строкам и столбцам. Возможно вас заинтересует также необычное решение этой задачи через создание DSL на базе реализации текучего интерфейса

1 стартмани

21.03.2022    10235    8    kalyaka    11    

45

Математика и алгоритмы Программист 1С v8.3 Бесплатно (free)

Дополнение по формату файлов конфигурации (*.cf) в версии 8.3.16.

16.12.2021    11080    fishca    12    

39
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Kosstikk 87 21.05.13 15:21 Сейчас в теме
Как-то так сделано или поинтересней?


"ВЫБРАТЬ
| ""а"" КАК буква
|ПОМЕСТИТЬ буквы
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ""б""
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| ""в""
|;
|
|////////////////////////////////////////////////////////////­////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| буква1.буква КАК буква1,
| буква2.буква КАК буква2,
| буква3.буква КАК буква3
|ИЗ
| буквы КАК буква1,
| буквы КАК буква2,
| буквы КАК буква3
|ГДЕ
| буква1.буква <> буква2.буква
| И буква1.буква <> буква3.буква
| И буква2.буква <> буква3.буква"
2. taiba 88 21.05.13 15:50 Сейчас в теме
(1) Kosstikk, нет - через рекурсивную функцию, перебирающую строку посимвольно
3. Kosstikk 87 21.05.13 15:59 Сейчас в теме
(2) а слово длиной 12 букв примерно за какое время раскладывает? =)
4. Поручик 4593 21.05.13 16:28 Сейчас в теме
(3) Число сочетаний C = n! / k!(n - k)!
5. taiba 88 21.05.13 18:31 Сейчас в теме
(3) Kosstikk, :-)
попробовал - у меня не хватило памяти
8 - 3 секунды
9 - 23
10 - 4:15
6. taiba 88 21.05.13 18:50 Сейчас в теме
(3) Kosstikk, не жрёт память вариант с выводом в конце. но это уже тема про велосипед, но там время раскладывания трудно оценить - на вывод тратится много
7. catena 110 22.05.13 08:20 Сейчас в теме
Упс, "съедает" одинаковые символы. Лучше написать
ПолучитьМассивСлов(Лев(тестСлово,инд-1)+Сред(тестСлово,инд+1));
8. taiba 88 22.05.13 10:17 Сейчас в теме
9. user956476 13.04.18 15:48 Сейчас в теме
Оставьте свое сообщение