diff options
author | Rob Pike <r@golang.org> | 2009-12-16 10:29:53 +1100 |
---|---|---|
committer | Rob Pike <r@golang.org> | 2009-12-16 10:29:53 +1100 |
commit | aea97e0bd7da9cef1cc631ddbd3578a0877a4fcc (patch) | |
tree | 89f2452373bd20e8248aee25ea00a592177bca95 /doc/progs/sort.go | |
parent | 881d6064d23d9da5c7ff368bc7d41d271290deff (diff) | |
download | golang-aea97e0bd7da9cef1cc631ddbd3578a0877a4fcc.tar.gz |
update tutorial.
R=rsc
CC=golang-dev
http://codereview.appspot.com/179063
Diffstat (limited to 'doc/progs/sort.go')
-rw-r--r-- | doc/progs/sort.go | 44 |
1 files changed, 22 insertions, 22 deletions
diff --git a/doc/progs/sort.go b/doc/progs/sort.go index 5b16ad260..6738860d9 100644 --- a/doc/progs/sort.go +++ b/doc/progs/sort.go @@ -5,59 +5,59 @@ package sort type Interface interface { - Len() int; - Less(i, j int) bool; - Swap(i, j int); + Len() int + Less(i, j int) bool + Swap(i, j int) } func Sort(data Interface) { for i := 1; i < data.Len(); i++ { for j := i; j > 0 && data.Less(j, j-1); j-- { - data.Swap(j, j-1); + data.Swap(j, j-1) } } } func IsSorted(data Interface) bool { - n := data.Len(); + n := data.Len() for i := n - 1; i > 0; i-- { if data.Less(i, i - 1) { - return false; + return false } } - return true; + return true } // Convenience types for common cases type IntArray []int -func (p IntArray) Len() int { return len(p); } -func (p IntArray) Less(i, j int) bool { return p[i] < p[j]; } -func (p IntArray) Swap(i, j int) { p[i], p[j] = p[j], p[i]; } +func (p IntArray) Len() int { return len(p) } +func (p IntArray) Less(i, j int) bool { return p[i] < p[j] } +func (p IntArray) Swap(i, j int) { p[i], p[j] = p[j], p[i] } type FloatArray []float -func (p FloatArray) Len() int { return len(p); } -func (p FloatArray) Less(i, j int) bool { return p[i] < p[j]; } -func (p FloatArray) Swap(i, j int) { p[i], p[j] = p[j], p[i]; } +func (p FloatArray) Len() int { return len(p) } +func (p FloatArray) Less(i, j int) bool { return p[i] < p[j] } +func (p FloatArray) Swap(i, j int) { p[i], p[j] = p[j], p[i] } type StringArray []string -func (p StringArray) Len() int { return len(p); } -func (p StringArray) Less(i, j int) bool { return p[i] < p[j]; } -func (p StringArray) Swap(i, j int) { p[i], p[j] = p[j], p[i]; } +func (p StringArray) Len() int { return len(p) } +func (p StringArray) Less(i, j int) bool { return p[i] < p[j] } +func (p StringArray) Swap(i, j int) { p[i], p[j] = p[j], p[i] } // Convenience wrappers for common cases -func SortInts(a []int) { Sort(IntArray(a)); } -func SortFloats(a []float) { Sort(FloatArray(a)); } -func SortStrings(a []string) { Sort(StringArray(a)); } +func SortInts(a []int) { Sort(IntArray(a)) } +func SortFloats(a []float) { Sort(FloatArray(a)) } +func SortStrings(a []string) { Sort(StringArray(a)) } -func IntsAreSorted(a []int) bool { return IsSorted(IntArray(a)); } -func FloatsAreSorted(a []float) bool { return IsSorted(FloatArray(a)); } -func StringsAreSorted(a []string) bool { return IsSorted(StringArray(a)); } +func IntsAreSorted(a []int) bool { return IsSorted(IntArray(a)) } +func FloatsAreSorted(a []float) bool { return IsSorted(FloatArray(a)) } +func StringsAreSorted(a []string) bool { return IsSorted(StringArray(a)) } |