C++实现找出n个数中第k小的数
以下是使用 C++ 实现找出 n 个数中第 k 小的数的代码: ```cpp #include <iostream> #include <algorithm> #include <vector> int main() { int n, k; // 读取 n 和 k std::cin >> n >> k; // 定义一个存储数字的向量 std::vector<int> numbers(n); // 读取 n 个数字 for (int i = 0; i < n; ++i) { std::cin >> numbers[i]; } // 对向量进行排序 std::sort(numbers.begin(), numbers.end()); // 输出第 k 小的数,注意数组下标从 0 开始 std::cout << numbers[k - 1] << std::endl; return 0; } ``` ### 代码解释: 1. **输入读取**:首先读取 `n` 和 `k`,分别表示数字的个数和要找的第 `k` 小的数。然后使用一个 `for` 循环读取 `n` 个数字,并将它们存储在 `std::vector<int>` 中。 2. **排序**:使用 `std::sort` 函数对存储数字的向量进行排序,排序后向量中的元素按从小到大的顺序排列。 3. **输出结果**:由于数组下标从 0 开始,所以第 `k` 小的数在排序后的向量中的下标为 `k - 1`,将其输出。 ######[AI问答 | 362点数解答 | 2026-04-04 16:41:46]
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)350
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)322
- C++ 实现游戏赢家判断:巧妙找出满足和条件的最大数 (DeepSeek | 506点数解答 | 2025-06-20 16:18:09)121
- 星际编码大赛终极对决:机械星AI与异星人激战“逆序对”统计难题(字节豆包 | 509点数解答 | 2025-04-19 17:33:00)282
- C++实现戴夫后院抵御僵尸的植物选择策略(DeepSeek | 773点数解答 | 2026-01-19 19:20:57)47
- 高效计算逆序对:归并排序分治法详解与Python实现(阿里通义 | 1144点数解答 | 2026-03-18 17:49:11)35
- 解决 P2216 第 x 个数问题的 C++ 代码实现(字节豆包 | 368点数解答 | 2026-03-27 21:15:43)20
- 用 Pandas 深度剖析数据:从读取到统计分析全流程实战(GPT | 642点数解答 | 2024-06-30 15:39:49)363
- 用 Pandas 深入分析招聘数据:从数据读取到可视化全流程解析(GPT | 1539点数解答 | 2024-06-30 15:56:50)376
- C++ 破解数字游戏:找出数组添加全排列后相同数字最大数量(字节豆包 | 456点数解答 | 2025-02-27 18:56:24)277
- C++助力小小李老师:求解数组添加排列后最多相同数字数量(字节豆包 | 424点数解答 | 2025-03-01 14:46:52)227
- C++助力小小李老师:破解数组数字游戏最高得分之谜(字节豆包 | 434点数解答 | 2025-03-05 07:50:34)241