Реферат: Генерация комбинаторных объектов

alphabet : string[26] = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';

var

b : array [1..100] of byte;

N,i : byte;

begin

readln(N);

for i:=1 to N+1 do b[i]:=0;

writeln ('Пустое множество');

while (b[N+1]=0) do

begin

i:=1;

while B[i]=1 do

begin B[i]:=0; inc(i); end;

B[i]:=1;

for i:=1 to n do

if b[i]=1 then write(alphabet[i]);

writeln;

end;

end.

При необходимости обрабатывать (анализировать) построенные подмножества могут быть добавлены вызовы процедур обработки, получающие в качестве параметра массив B (указывающий своими единичными элементами номера элементов множества, включенных в текущее подмножество).

2 Перестановки

Пусть мы имеем 4 компонента, обозначенные буквами A, B, C, D соответственно.

Тогда множество всех перестановок из этих компонент будет включать следующие элементы:

ABCD BACD CABD DABC

ABDC BADC CADB DACB

ACBD BCAD CBAD DBAC

ACDB BCDA CBDA DBCA

ADBC BDAC CDAB DCAB

ADCB BDCA CDBA DCBA

К-во Просмотров: 401
Бесплатно скачать Реферат: Генерация комбинаторных объектов