Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
пособие рязанова.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
1.55 Mб
Скачать

2.6. Размещения с повторениями

Размещением с повторениями n-элементного множества по k местам называется k-элементная последовательность, состоящая из элементов n-элементного множества М, причём элементы в последовательности могут повторяться. Количество мест может превышать количество элементов в множестве.

Теорема 2.4. Количество всех различных размещений с повторениями n-элементного множества М по k местам равно nk.

Доказательство. Для того чтобы получить одно размещение с повторениями, нужно выполнить одно за другим k действий: заполнить 1-ое место в последовательности, 2-ое место и так до k-го места. Для выполнения каждого действия можно взять любой элемент из множества М и поставить его на соответствующее место, т.е. каждое из k действий можно выполнить n способами. По правилу произведения все k действий могут быть выполнены nnn=nk способами, следовательно, количество всех различных размещений с повторениями n-элементного множества по k местам равно nk.

Получить все размещения с повторениями n-элементного множества М по k местам можно, используя метод поиска с возвращением, выполняя действия, описанные в доказательстве теоремы 2.4. Формирование i-го элемента размещения с повторениями опишем рекурсивным алгоритмом 2.4, блок-схема которого представлена на рис.2.9. В цикле перебираются элементы множества М (каждый элемент можно поставить на i-ое место). Если заполнено k-ое место, то размещение с повторениями сформировано и выводим его, иначе заполняем следующее i+1-ое место по алгоритму 2.4 элементами множества М.

Алгоритм 2.4 порождения размещений с повторениями n-эле-ментного множества по k местам.

Вход: i – заполняемое место в последовательности R.

Выход: последовательность всех размещений с повторениями n-эле-ментного множества М по k местам.

Глобальные параметры: М – n-элементное множество;

R – формируемое размещение с повторениями;

n – мощность множества.

k – количество мест.

Ri := x

+

Размещение с повторениями (i+1)

Рис.2.9. Рекурсивный алгоритм порождения размещений с повторениями

n-элементного множества по k местам

Пусть задано множество {1,2,3} и требуется получить все его размещения с повторениями по двум местам. Схема получения всех размещений по алгоритму 2.4 представлена на рис.2.10. В этой схеме представлены формируемые размещения. В каждой ситуации на очередное место в размещении можно поставить любой элемент из заданного множества {1,2,3}. В исходной ситуации все места размещения неопределенны и любой элемент множества {1,2,3} можно поставить на первое место. В схеме к стрелкам приписаны номера действий. В результате выполнения действия 1 на первое место размещения устанавливается элемент 1. После выполнения действия 2 на второе место размещения также устанавливается элемент 1 и первое размещение (1,1) сформировано. Затем выполняется шаг назад и действие 3 ставит элемент 2 на второе место и второе размещение (1,2) сформировано. Далее выполняется шаг назад и действие 4 заканчивает формирование очередного размещения (1,3). После этого выполняется два шага назад. Аналогичным образом формируются все остальные размещения. Действия 1, 5 и 9 заполняют первое место размещения, действия 2, 3, 4, 6, 7, 8, 10, 11 и 12 – второе место.

размещение

(1,1)

2

размещение 3 размещение

(1,?) (1,2)

4

размещение

(1,3)

1

размещение

(2,1)

6

р азмещение 5 размещение 7 размещение

(?,?) (2,?) (2,2)

8

размещение

(2,3)

9

размещение

(3,1)

10

размещение 11 размещение

(1,?) (3,2)

12

размещение

(3,3)

Рис.2.10. Схема получения всех размещений с повторениями

по алгоритму 2.4