若采用堆排序方法对关键字序列{265,301,751,129,937,863,742,694,076,438}进行升序排序,写出其每趟排序结束后的关键字序列。
若采用堆排序方法对关键字序列{265,301,751,129,937,863,742,694,076,438}进行升序排序,写出其每趟排序结束后的关键字序列。
【正确答案】:用“最大堆”的排序结果为升序列。
初始态:[265 301 751 129 937 863 742 694 076 438]
建立初始堆:[937 694 863 265 438 751 742 129 076 301]
第一次排序重建堆:[863 694 751 765 438 301 742 129 076]937
第二次排序重建堆:[751 694 742 265 438 301 076 129]863 937
第三次排序重建堆:[742 694 301 265 438 129 076]751 863 937
第四次排序重建堆:[694 438 301 265 076 129]742 751 863 937
第五次排序重建堆:[438 265 301 129 076]694 742 751 863 937
第六次排序重建堆:[301 265 076 129]438 694 742 751 863 937
第七次排序重建堆:[265 129 076]301 438 694 742 751 863 937
第八次排序重建堆:[129 076]265 301 438 694 742 751 863 937
第九次排序重建堆:076 129 265 301 438 694 742 751 863 937
Top