binary heap assignment