关注
//堆排序
#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
相关推荐
10-19 15:00
文华学院 嵌入式工程师 点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招总结 #
480951次浏览 4897人参与
# 晒一晒我的offer #
10065794次浏览 106609人参与
# 职场情商大赛 #
3891次浏览 51人参与
# 我在牛爱网找对象 #
77714次浏览 584人参与
# 如何排解工作中的焦虑 #
76817次浏览 1080人参与
# lastday知无不言 #
25133次浏览 182人参与
# 你觉得今年秋招难吗 #
1262759次浏览 15830人参与
# 夸夸我的求职搭子 #
134352次浏览 1381人参与
# 同bg的你秋招战况如何? #
97747次浏览 742人参与
# 我发现了面试通关密码 #
951197次浏览 15840人参与
# 今年形式下双非本找得到工作吗 #
53927次浏览 498人参与
# 非技术岗简历怎么写 #
163687次浏览 2501人参与
# 实习,投递多份简历没人回复怎么办 #
2476180次浏览 35014人参与
# 怎么面对正在吵架的两个同事 #
9955次浏览 75人参与
# 实习想申请秋招offer,能不能argue薪资 #
41531次浏览 334人参与
# 央国企投递记录 #
56898次浏览 1155人参与
# 找工作时遇到的神仙HR #
571781次浏览 3907人参与
# 投递实习岗位前的准备 #
1202803次浏览 18604人参与
# 工作压力大怎么缓解 #
37722次浏览 662人参与
# 上班到公司第一件事做什么? #
15578次浏览 175人参与