Множества произвольного типа: различия между версиями
Материал из Вики проекта PascalABC.NET
Перейти к навигацииПерейти к поиску
Mikst (обсуждение | вклад) (Новая: == Ссылки == Особенности языка: базовый уровень) |
Ibond (обсуждение | вклад) Нет описания правки |
||
(не показаны 3 промежуточные версии 1 участника) | |||
Строка 1: | Строка 1: | ||
Базовый тип для множества может быть произвольным. | |||
<source lang="Delphi">var | |||
s1: set of string := ['Иванов','Попов','Сидорова','Петров']; | |||
s2: set of string := ['Козлов','Петров','Иванов']; | |||
begin | |||
writeln('Множество s1: ',s1); | |||
writeln('Множество s2: ',s2); | |||
writeln('Объединение множеств s1 и s2: ',s1+s2); | |||
writeln('Пересечение множеств s1 и s2: ',s1*s2); | |||
writeln('Разность множеств s1 и s2: ',s1-s2); | |||
Include(s1,'Умнов'); | |||
s1 -= ['Иванов']; // делает то же, что и Exclude | |||
writeln('Множество s1: ',s1); | |||
write('Множество s2: '); | |||
foreach str: string in s2 do | |||
write(str,' '); | |||
end. </source> | |||
Множества внутри устроены не как битовые векторы, а как хеш-таблицы, за счет этого операции с ними менее эффективны. | |||
== Ссылки == | == Ссылки == | ||
[[Особенности языка: базовый уровень]] | *[[Особенности языка: базовый уровень]] | ||
*[http://pascalabc.net/ru/bazovyie-osobennosti-yazyika-i-bibliotek.html Сайт PascalABC.NET: Особенности языка] |
Текущая версия от 14:07, 3 августа 2010
Базовый тип для множества может быть произвольным.
var
s1: set of string := ['Иванов','Попов','Сидорова','Петров'];
s2: set of string := ['Козлов','Петров','Иванов'];
begin
writeln('Множество s1: ',s1);
writeln('Множество s2: ',s2);
writeln('Объединение множеств s1 и s2: ',s1+s2);
writeln('Пересечение множеств s1 и s2: ',s1*s2);
writeln('Разность множеств s1 и s2: ',s1-s2);
Include(s1,'Умнов');
s1 -= ['Иванов']; // делает то же, что и Exclude
writeln('Множество s1: ',s1);
write('Множество s2: ');
foreach str: string in s2 do
write(str,' ');
end.
Множества внутри устроены не как битовые векторы, а как хеш-таблицы, за счет этого операции с ними менее эффективны.