begin sw:heap_sort