C++经典入门题:求第k小的数(sort排序法)
这个问题可以用最简单的排序方法来解决,这里给出使用 `std::sort` 的最入门方法。 ```cpp #include <iostream> #include <algorithm> using namespace std; int main() { int n, k; cin >> n >> k; int a[100]; // 题目限制 n < 100 for (int i = 0; i < n; i++) { cin >> a[i]; } sort(a, a + n); // 升序排序 cout << a[k - 1] << endl; // 第k小在数组索引为k-1 return 0; } ``` **逻辑说明** - 读取n和k - 读取n个数字存入数组 - 用 `sort(a, a+n)` 对数组进行升序排序 - 第k小的数字就是排序后数组中索引为 `k-1` 的元素 **需要注意** - 数组要开足够大(题目限制n<100,这里开100已经够用) - 数组索引从0开始,所以第k个元素的位置是 `k-1` - 要包含 `<algorithm>` 头文件才能使用 `sort` 函数 ######[AI问答 | 284点数解答 | 2026-05-09 20:03:14]
相关提问
- 6 - 4 军事体能成绩冒泡排序:输入轮数输出中间结果的实现(字节豆包 | 250点数解答 | 2025-12-25 15:42:51)61
- 陆军工程大学学员军事体能成绩冒泡排序:按指定轮数输出中间结果(字节豆包 | 250点数解答 | 2025-12-25 15:52:30)79
- "Fixing the Bugs in C Code: Correcting `gets`, `strlen`, and Pointer Usage"(GPT | 664点数解答 | 2024-12-06 09:27:31)294
- sys_module 表结构与 Java 实体类 SysModule 详解(字节豆包 | 252点数解答 | 2025-04-09 10:54:17)222
- MySQL表与Java类:`sys_role` 的创建及实体类定义全解析(字节豆包 | 168点数解答 | 2025-04-10 14:39:47)227
- C++ 破解“国王游戏”弱化版:贪心排序算法巧求最少最大奖赏(DeepSeek | 550点数解答 | 2025-04-28 18:16:50)426
- 巧妙贪心排序:解决国王游戏中大臣奖赏最大化问题(DeepSeek | 1002点数解答 | 2025-05-10 20:58:15)208
- C++ 实现:用贪心算法解国王游戏(弱化版),使大臣获赏最大值最小(DeepSeek | 507点数解答 | 2025-05-10 20:59:01)190
- Java代码实现从JSON数据中提取ID,涉及“数据”与“项目 - 知识库”结构(字节豆包 | 603点数解答 | 2025-04-15 22:48:51)257
- 字符图形:字母正三角的Python实现(字节豆包 | 358点数解答 | 2026-04-02 14:17:17)36
- Python 实现打印字母正三角图形(字节豆包 | 360点数解答 | 2026-04-02 14:17:39)29
- 【入门】C++实现字母正三角字符图形打印(字节豆包 | 323点数解答 | 2026-04-02 14:18:02)26