酷代码 AI
菜单
服务商

使用计数排序实现输入数字从小到大排序

这段代码的思路是使用计数排序的方法,通过数组 `a` 来统计每个数出现的次数,最后根据出现次数输出对应的数,从而实现排序。以下是完整的代码: ```cpp #include <iostream> using namespace std; int n, x, a[1001]; int main() { cin >> n; for (int i = 1; i <= n; i++) { cin >> x; // a[x]统计x出现的次数 a[x]++; } // 遍历数组a的每一个元素,输出a[i]次i bool first = true; for (int i = 1; i <= 1000; i++) { for (int j = 0; j < a[i]; j++) { if (!first) { cout << " "; } cout << i; first = false; } } return 0; } ``` ### 代码解释: 1. **输入部分**:首先读取整数 `n`,表示要输入的数字个数。然后使用 `for` 循环读取 `n` 个数字,对于每个数字 `x`,将数组 `a[x]` 的值加 1,以此统计 `x` 出现的次数。 2. **输出部分**:使用嵌套的 `for` 循环遍历数组 `a`,对于每个非零的 `a[i]`,输出 `i` 共 `a[i]` 次。使用 `first` 变量来控制输出格式,避免在第一个数字前输出多余的空格。 ######[AI问答 | 392点数解答 | 2026-04-04 20:00:40]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]