min heap almost done
min heap almost done