summaryrefslogtreecommitdiff
path: root/test/bench/binary-tree-freelist.go
diff options
context:
space:
mode:
Diffstat (limited to 'test/bench/binary-tree-freelist.go')
-rw-r--r--test/bench/binary-tree-freelist.go26
1 files changed, 13 insertions, 13 deletions
diff --git a/test/bench/binary-tree-freelist.go b/test/bench/binary-tree-freelist.go
index 0d58d9add..21fe5c5d9 100644
--- a/test/bench/binary-tree-freelist.go
+++ b/test/bench/binary-tree-freelist.go
@@ -44,12 +44,12 @@ import (
var n = flag.Int("n", 15, "depth")
type Node struct {
- item int;
- left, right *Node;
+ item int;
+ left, right *Node;
}
type Arena struct {
- head *Node
+ head *Node;
}
var arena Arena
@@ -67,9 +67,9 @@ func (n *Node) free() {
func (a *Arena) New(item int, left, right *Node) *Node {
if a.head == nil {
- nodes := make([]Node, 3 << uint(*n));
+ nodes := make([]Node, 3<<uint(*n));
for i := 0; i < len(nodes)-1; i++ {
- nodes[i].left = &nodes[i+1];
+ nodes[i].left = &nodes[i+1]
}
a.head = &nodes[0];
}
@@ -81,11 +81,11 @@ func (a *Arena) New(item int, left, right *Node) *Node {
return n;
}
-func bottomUpTree(item, depth int) *Node {
+func bottomUpTree(item, depth int) *Node {
if depth <= 0 {
return arena.New(item, nil, nil)
}
- return arena.New(item, bottomUpTree(2*item-1, depth-1), bottomUpTree(2*item, depth-1))
+ return arena.New(item, bottomUpTree(2*item-1, depth-1), bottomUpTree(2*item, depth-1));
}
func (n *Node) itemCheck() int {
@@ -95,13 +95,13 @@ func (n *Node) itemCheck() int {
return n.item + n.left.itemCheck() - n.right.itemCheck();
}
-const minDepth = 4;
+const minDepth = 4
func main() {
flag.Parse();
maxDepth := *n;
- if minDepth + 2 > *n {
+ if minDepth+2 > *n {
maxDepth = minDepth + 2
}
stretchDepth := maxDepth + 1;
@@ -111,15 +111,15 @@ func main() {
longLivedTree := bottomUpTree(0, maxDepth);
- for depth := minDepth; depth <= maxDepth; depth+=2 {
- iterations := 1 << uint(maxDepth - depth + minDepth);
+ for depth := minDepth; depth <= maxDepth; depth += 2 {
+ iterations := 1 << uint(maxDepth-depth+minDepth);
check = 0;
for i := 1; i <= iterations; i++ {
- t := bottomUpTree(i,depth);
+ t := bottomUpTree(i, depth);
check += t.itemCheck();
t.free();
- t = bottomUpTree(-i,depth);
+ t = bottomUpTree(-i, depth);
check += t.itemCheck();
t.free();
}