summaryrefslogtreecommitdiff
path: root/ds
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2020-07-15 08:28:21 +0100
committerPaul Buetow <paul@buetow.org>2020-07-15 08:28:21 +0100
commite6e3b27756974ad7255345c98260918a96f3a476 (patch)
treed56e404ca6724a64116aa10cb147161f8e7fcff2 /ds
parent73ca4d0b86036a41b452212702e6aa669888d740 (diff)
fix shell sort
Diffstat (limited to 'ds')
-rw-r--r--ds/comparer.go10
-rw-r--r--ds/integer.go22
2 files changed, 21 insertions, 11 deletions
diff --git a/ds/comparer.go b/ds/comparer.go
index 168ec19..8fb3727 100644
--- a/ds/comparer.go
+++ b/ds/comparer.go
@@ -1,8 +1,10 @@
package ds
type Comparer interface {
- LowerThan(a Comparer) bool
- HigherThan(a Comparer) bool
- Equals(a Comparer) bool
- IntVal() int
+ Equal(a Comparer) bool
+ Lower(a Comparer) bool
+ LowerEqual(a Comparer) bool
+ Higher(a Comparer) bool
+ HigherEqual(a Comparer) bool
+ Int() int
}
diff --git a/ds/integer.go b/ds/integer.go
index b8026da..336a941 100644
--- a/ds/integer.go
+++ b/ds/integer.go
@@ -39,18 +39,26 @@ func (i Integer) String() string {
return fmt.Sprintf("%d", i.val)
}
-func (i Integer) IntVal() int {
+func (i Integer) Int() int {
return i.val
}
-func (i Integer) LowerThan(j Comparer) bool {
- return i.val < j.IntVal()
+func (i Integer) Equal(j Comparer) bool {
+ return i.val == j.Int()
}
-func (i Integer) HigherThan(j Comparer) bool {
- return i.val > j.IntVal()
+func (i Integer) Lower(j Comparer) bool {
+ return i.val < j.Int()
}
-func (i Integer) Equals(j Comparer) bool {
- return i.val == j.IntVal()
+func (i Integer) LowerEqual(j Comparer) bool {
+ return i.val <= j.Int()
+}
+
+func (i Integer) Higher(j Comparer) bool {
+ return i.val > j.Int()
+}
+
+func (i Integer) HigherEqual(j Comparer) bool {
+ return i.val >= j.Int()
}