diff options
| author | Paul Buetow <paul@buetow.org> | 2020-07-12 11:35:03 +0100 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2020-07-12 11:35:03 +0100 |
| commit | 4edf2dd20b300c27dcc96829e262aedcd438291a (patch) | |
| tree | f4596883c8210b4e855166289f482efb907bec64 /ds | |
have selection sort
Diffstat (limited to 'ds')
| -rw-r--r-- | ds/comparer.go | 9 | ||||
| -rw-r--r-- | ds/integer.go | 25 |
2 files changed, 34 insertions, 0 deletions
diff --git a/ds/comparer.go b/ds/comparer.go new file mode 100644 index 0000000..737ad1b --- /dev/null +++ b/ds/comparer.go @@ -0,0 +1,9 @@ +package ds + +type Comparer interface { + LowerThan(a Comparer) bool + HigherThan(a Comparer) bool + Equals(a Comparer) bool +} + +type CompareList []Comparer diff --git a/ds/integer.go b/ds/integer.go new file mode 100644 index 0000000..69ee0aa --- /dev/null +++ b/ds/integer.go @@ -0,0 +1,25 @@ +package ds + +import "math/rand" + +type Integer int + +func RandomIntegers(length, max int) []Comparer { + a := make([]Comparer, length) + for i := 0; i < length; i++ { + a[i] = Integer(rand.Intn(max)) + } + return a +} + +func (i Integer) LowerThan(j Comparer) bool { + return i < j.(Integer) +} + +func (i Integer) HigherThan(j Comparer) bool { + return i > j.(Integer) +} + +func (i Integer) Equals(j Comparer) bool { + return i == j.(Integer) +} |
