关注
//堆排序
#include <iostream>
using namespace std;
int arr[100010];
int n,sz;
void down(int u) {
int t = u;
if (u * 2 <= sz && arr[u * 2] < arr[t]) t = u * 2;
if (u * 2 + 1 <= sz && arr[u * 2 + 1] < arr[t]) t = u * 2 + 1;
if (u != t) {
swap(arr[u], arr[t]);
down(t);
}
}
int main() {
printf("你想输入多少个数字:");
scanf("%d", &n);
sz = n;
for (int i = 1; i <= n; i++)
scanf("%d", &arr[i]);
for (int i = n / 2; i; i--)
down(i);
while (sz) {
printf("%d ", arr[1]);
arr[1] = arr[sz--];
down(1);
}
return 0;
}
1
相关推荐
查看37道真题和解析
点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招总结 #
513246次浏览 5240人参与
# 我的求职思考 #
4278218次浏览 57698人参与
# 读研or工作,哪个性价比更高? #
18907次浏览 285人参与
# 晒一晒我的offer #
10148091次浏览 107257人参与
# 数字马力求职进展汇总 #
122429次浏览 1094人参与
# 牛客激励计划 #
20795次浏览 571人参与
# 应届生应该先就业还是先择业 #
65935次浏览 348人参与
# 职场情商大赛 #
15305次浏览 170人参与
# 金融银行求职进展汇总 #
84863次浏览 583人参与
# 我的论文进展 #
5163次浏览 63人参与
# 滴!实习打卡 #
499629次浏览 5676人参与
# 如何排解工作中的焦虑 #
83743次浏览 1130人参与
# 我在牛爱网找对象 #
82664次浏览 608人参与
# 985本硕1个中小厂offer,摆烂or继续努力 #
87730次浏览 624人参与
# 字节跳动工作体验 #
229397次浏览 3139人参与
# 求职你最看重什么? #
20231次浏览 146人参与
# 面试题刺客退退退 #
148884次浏览 2193人参与
# 百度秋招提前批进度 #
89752次浏览 1071人参与
# 夸夸我的求职搭子 #
136338次浏览 1408人参与
# 你投了多少份简历了? #
72783次浏览 857人参与