func (bq *Heap) Size() int {
	return bq.size
}
/*
Return the total keys present in the queue.
package brodal
type HeapElement interface {
	Value() int
}
type Heap struct {
	root *HeapNode
	size int
}
func NewHeap() *Heap {
	return &Heap{}
}
func (bq *Heap) Insert(value HeapElement) {
	newnode := newHeapNode(value)
	bq.size++
	bq.insert(newnode)
}
func (bq *Heap) Pop() HeapElement {
	bq.size--
	retval := bq.root.value
	if bq.root.subqueueHead != nil {
		bq.mergeSubqueue()
	}
	minchild := bq.root.getMinChild()
	if minchild == nil {
		bq.root = nil
	} else {
		minchild.rogue()
		bq.reInsertChildren(minchild)
		bq.promoteToRoot(minchild)
	}
	return retval
}
func (bq *Heap) Peek() HeapElement {
	return bq.root.value
}