mirror of
https://github.com/ProgramSnail/Lama.git
synced 2025-12-06 14:58:50 +00:00
50 lines
1.2 KiB
Text
50 lines
1.2 KiB
Text
import Collection;
|
|
|
|
local s = emptySet (compare), i;
|
|
|
|
for i := 0, i < 100, i := i+1
|
|
do
|
|
s := addSet (s, i);
|
|
validateColl (s)
|
|
od;
|
|
|
|
printf ("Set internal structure: %s\n", internalOf (s).string);
|
|
printf ("Set elements: %s\n", elements (s).string);
|
|
|
|
for i := 0, i < 100, i := i+1
|
|
do
|
|
printf ("Testing %-3d => %d\n", i, memSet (s, i));
|
|
printf ("Testing %-3d => %d\n", i+100, memSet (s, i+100))
|
|
od;
|
|
|
|
for i := 50, i < 150, i := i+1
|
|
do
|
|
s := removeSet (s, i);
|
|
validateColl (s)
|
|
od;
|
|
|
|
printf ("Set internal structure: %s\n", internalOf (s).string);
|
|
printf ("Set elements: %s\n", elements (s).string);
|
|
|
|
for i := 0, i < 100, i := i+1
|
|
do
|
|
printf ("Testing %-3d => %d\n", i, memSet (s, i))
|
|
od;
|
|
|
|
printf ("List set: %s\n", internalOf (listSet ({1, 2, 3, 4, 5}, compare)).string);
|
|
|
|
{
|
|
local u = union (listSet ({1, 2, 3, 4, 5}, compare), listSet ({11, 22, 33, 44, 55}, compare)), u1;
|
|
|
|
validateColl (u);
|
|
|
|
printf ("Set union: %s\n", internalOf (u).string);
|
|
printf ("Elements: %s\n", elements (u).string);
|
|
|
|
u1 := diff (u, listSet ({1, 22, 3, 44, 5}, compare));
|
|
validateColl (u1);
|
|
|
|
printf ("Set difference: %s\n", internalOf (u1).string);
|
|
printf ("Elements: %s\n", elements (u1).string)
|
|
}
|
|
|