tasks a-s
This commit is contained in:
parent
47bf37c096
commit
b83f433714
12433 changed files with 156208 additions and 123 deletions
35
Task/Queue-Definition/GAP/queue-definition.gap
Normal file
35
Task/Queue-Definition/GAP/queue-definition.gap
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
Enqueue := function(v, x)
|
||||
Add(v[1], x);
|
||||
end;
|
||||
|
||||
Dequeue := function(v)
|
||||
local n, x;
|
||||
n := Size(v[2]);
|
||||
if n = 0 then
|
||||
v[2] := Reversed(v[1]);
|
||||
v[1] := [ ];
|
||||
n := Size(v[2]);
|
||||
if n = 0 then
|
||||
return fail;
|
||||
fi;
|
||||
fi;
|
||||
return Remove(v[2], n);
|
||||
end;
|
||||
|
||||
# a new queue
|
||||
v := [[], []];
|
||||
|
||||
Enqueue(v, 3);
|
||||
Enqueue(v, 4);
|
||||
Enqueue(v, 5);
|
||||
Dequeue(v);
|
||||
# 3
|
||||
Enqueue(v, 6);
|
||||
Dequeue(v);
|
||||
# 4
|
||||
Dequeue(v);
|
||||
# 5
|
||||
Dequeue(v);
|
||||
# 6
|
||||
Dequeue(v);
|
||||
# fail
|
||||
Loading…
Add table
Add a link
Reference in a new issue