summaryrefslogtreecommitdiff
path: root/week3/mart/StdSortList.dcl
blob: 46bd2380549acfb19c5842465e3e5eb5fcd64639 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
definition module StdSortList

import StdClass

::  SortList a

newSortList   :: SortList a                                    // lege gesorteerde lijst
memberSort    :: a (SortList a) -> Bool       | Eq, Ord a      // is element van
insertSort    :: a (SortList a) -> SortList a | Ord a          // voeg element toe
removeFirst   :: a (SortList a) -> SortList a | Eq, Ord a      // verwijder eerste voorkomen
removeAll     :: a (SortList a) -> SortList a | Eq, Ord a      // verwijder alle voorkomens
elements      ::   (SortList a) -> [a]                         // geef alle elementen
count         ::   (SortList a) -> Int                         // aantal elementen

minimum       ::   (SortList a) -> a                           // huidige minimum waarde
maximum       ::   (SortList a) -> a                           // huidige maximum waarde

mergeSortList :: (SortList a) (SortList a) -> SortList a | Eq, Ord a // meng gesorteerde lijsten