Initial data commit

This commit is contained in:
Ingy döt Net 2023-07-01 11:58:00 -04:00
parent 72d218235f
commit f23f22d71c
199087 changed files with 3378941 additions and 0 deletions

View file

@ -0,0 +1,13 @@
-module(stack).
-export([empty/1, new/0, pop/1, push/2, top/1]).
new() -> [].
empty([]) -> true;
empty(_) -> false.
pop([H|T]) -> {H,T}.
push(H,T) -> [H|T].
top([H|_]) -> H.

View file

@ -0,0 +1,14 @@
1> c(stack).
{ok,stack}
2> Stack = stack:new().
[]
3> NewStack = lists:foldl(fun stack:push/2, Stack, [1,2,3,4,5]).
[5,4,3,2,1]
4> stack:top(NewStack).
5
5> {Popped, PoppedStack} = stack:pop(NewStack).
{5,[4,3,2,1]}
6> stack:empty(NewStack).
false
7> stack:empty(stack:new()).
true