(数据结构)堆排序
实验要求:用堆排序算法按关键字递减的顺序排序。
程序输入:待排序记录数(整数)和待排序记录(整数序列);
程序输出:建堆结果和建堆后第一、第二次筛选结果。(注:待排序记录数大于等于3)
测试用例1:
测试输入:
6↵
11↵
12↵
16↵
14↵
15↵
10↵
期待的输出:
16 15 11 14 12 10 ↵
15 14 11 10 12 ↵
14 12 11 10 ↵
测试用例2:
测试输入:
9↵
9↵
8↵
7↵
6↵
5↵
4↵
3↵
2↵
1↵
期待的输出:
9 8 7 6 5 4 3 2 1 ↵
8 6 7 2 5 4 3 1 ↵
7 6 4 2 5 1 3 ↵
代码如下:
#include<cstdio>
#include<iostream>
using namespace std;
int a[100+50]={
0},num;
void