Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Общие подходы к порождению комбинаторных объектов



При разработке алгоритмов часто возникает задача порождения комбинаторных объектов.

При порождении комбинаторных объектов существуют две возможные цели - систематическое порождение всех возможных конфигурация и порождение равномерно распределенных случайных конфигураций.

Алгоритм систематического порождения обычно строится по следующей схеме (1-я схема):

Замечание 1. При такой схеме необходимо учитывать, что алгоритм предпринимает еще одно преобразование после того, как выведен последний объект.

На практике иногда желательно, чтобы изменения текущего объекта при переходе к следующему были, возможно, малыми. Такие алгоритмы называются алгоритмами минимального изменения.

Случайное порождение комбинаторных объектов часто затруднено тем, что требуется равновероятность всех возможных конфигураций. В этом случае можно задать определенное взаимно однозначное соответствием между целыми числами 0,1,…, N -1 и N объектами, тогда случайное порождение осуществляется случайным порождением целого числа от 0 до N -1 и обращением его в объект. Такой же подход пригоден и для систематического порождения комбинаторных объектов. Систематическое порождение сводится к перечислению целых чисел от 0 до N -1 и обращением каждого числа в объект (2-я схема).

Замечание 2. Процесс обращения может быть долгим, тогда его следует избегать, если это возможно.





Дата публикования: 2015-01-04; Прочитано: 311 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...