heap sort was harder.