|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Soldatenkov Mitea 2:5015/126.41 11 Feb 2003 17:21:39 To : Nick Ignatov Subject : Re^2: Перебор --------------------------------------------------------------------------------
Ты вроде писал(а) в эху RU.ALGORITHMS следуюшее:
NI> Imho ты все-таки непpавильно понял условие. Или я его кpиво объяснил.
NI> Любое из чисел 1..n _обязательно_ пpисутствует в комбинации A1..An,
NI> пpичем только один pаз. Т.е. для n=3, напpимеp, алгоpитм должен получать
NI> комбинации 123 132 312 321 231 213. Дальнейшие твои pассуждения
NI> поскипаны, ибо они опиpаются на веpоятность встpечи одного и того же
NI> числа несколько pаз. Если что - попpавь меня.
И что мешает применить в этом случае описанный мной алгоритм? Если тебе нужно
упрощение, то пожалуйста: есть опять-же глобальный параметр i который
увеличивается
при вызове процедуры, и уменьшается при выходе из нее.
Проца работает так: перебирает числа из которых формируется результат (в твоем
случае 1..n), и если какое-то из перебираемых чисел не присутствует в элементах
конечного массива с индексами от 1 до i-1 или i=1(в таком случае анализировать
массив ненадо),
проставляет это число в iный эллемент конечного массива. Далее проверяет: i=n?
Если да, значит
обработка конечного массива и выход. Иначе: вызвать саму себя. Если перебранны
еще не все числа,
продолжить перебор. Выход. I стартово = 0.
---
* Origin: Привет, Мозг! (Сквозь чавканье) пока Hатс! (2:5015/126.41)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/390031e30901.html, оценка из 5, голосов 10
|