站队排序问题
#include <iostream>using namespace std;int main() {int n;cin >> n;int num[105] = { 0 };for (int i = 1; i <= n; i++) {cin >> num[i];}for (int i = 2; i <= n; i++) {int t = num[i]
·
题目描述
给出n个同学的身高,请根据他们的身高序升序排列并输出排序结果。
输入
第一行1个正整数n,表示有n个同学的身高,2<n≤100。
第二行包含n个正整数,之间用一个空格隔开,表示n个同学的身高。每个同学的身高都在150~200厘米之间。
输出
一行n个正整数,之间用一个空格隔开,表示n个同学根据身高升序排列的结果。
样例输入
7
180 170 176 160 155 150 160
样例输出
150 155 160 160 170 176 180
数据规模与约定
时间限制:1 s
内存限制:256 M
100% 的数据保证 2<n≤100
插入排序
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int num[105] = { 0 };
for (int i = 1; i <= n; i++) {
cin >> num[i];
}
for (int i = 2; i <= n; i++) {
int t = num[i];
int j = 1;
while (num[j] <= t) j++;
for (int k= i -1; k>=j; k--) {
num[k + 1] = num[k];
}
num[j] = t;
}
for (int i = 1; i <= n; i++) {
if (i != 1) cout << " ";
cout << num[i];
}
return 0;
}
冒泡排序
#include <iostream>
using namespace std;
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int num[105] = { 0 };
for (int i = 1; i <= n; i++) {
cin >> num[i];
}
for (int i = 1; i <= n; i++) {
for (int j = i; j <= n; j++) {
if (num[j] < num[i]) {
swap(num[i], num[j]);
}
}
}
for (int i = 1; i <= n; i++) {
if (i != 1) cout << " ";
cout << num[i];
}
return 0;
}
选择排序
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int num[105] = { 0 };
for (int i = 1; i <= n; i++) {
cin >> num[i];
}
for (int i = 1; i <= n; i++) {
int t = i;
for (int j = i; j <= n; j++) {
if (num[j] < num[t]) {
t = j;
}
}
swap(num[t], num[i]);
}
for (int i = 1; i <= n; i++) {
if (i != 1) cout << " ";
cout << num[i];
}
return 0;
}

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)