diff options
author | Tianon Gravi <admwiggin@gmail.com> | 2015-01-15 11:54:00 -0700 |
---|---|---|
committer | Tianon Gravi <admwiggin@gmail.com> | 2015-01-15 11:54:00 -0700 |
commit | f154da9e12608589e8d5f0508f908a0c3e88a1bb (patch) | |
tree | f8255d51e10c6f1e0ed69702200b966c9556a431 /src/pkg/container/heap/example_intheap_test.go | |
parent | 8d8329ed5dfb9622c82a9fbec6fd99a580f9c9f6 (diff) | |
download | golang-upstream/1.4.tar.gz |
Imported Upstream version 1.4upstream/1.4
Diffstat (limited to 'src/pkg/container/heap/example_intheap_test.go')
-rw-r--r-- | src/pkg/container/heap/example_intheap_test.go | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/src/pkg/container/heap/example_intheap_test.go b/src/pkg/container/heap/example_intheap_test.go deleted file mode 100644 index 02d3d8668..000000000 --- a/src/pkg/container/heap/example_intheap_test.go +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2012 The Go Authors. All rights reserved. -// Use of this source code is governed by a BSD-style -// license that can be found in the LICENSE file. - -// This example demonstrates an integer heap built using the heap interface. -package heap_test - -import ( - "container/heap" - "fmt" -) - -// An IntHeap is a min-heap of ints. -type IntHeap []int - -func (h IntHeap) Len() int { return len(h) } -func (h IntHeap) Less(i, j int) bool { return h[i] < h[j] } -func (h IntHeap) Swap(i, j int) { h[i], h[j] = h[j], h[i] } - -func (h *IntHeap) Push(x interface{}) { - // Push and Pop use pointer receivers because they modify the slice's length, - // not just its contents. - *h = append(*h, x.(int)) -} - -func (h *IntHeap) Pop() interface{} { - old := *h - n := len(old) - x := old[n-1] - *h = old[0 : n-1] - return x -} - -// This example inserts several ints into an IntHeap, checks the minimum, -// and removes them in order of priority. -func Example_intHeap() { - h := &IntHeap{2, 1, 5} - heap.Init(h) - heap.Push(h, 3) - fmt.Printf("minimum: %d\n", (*h)[0]) - for h.Len() > 0 { - fmt.Printf("%d ", heap.Pop(h)) - } - // Output: - // minimum: 1 - // 1 2 3 5 -} |