酷代码 AI
菜单
服务商

C++实现数组逆序重放:代码、解释与复杂度分析

```cpp #include <iostream> using namespace std; int main() { int n; // 读取数组元素的个数 cin >> n; int a[1000]; // 读取数组元素 for (int i = 0; i < n; i++) { cin >> a[i]; } // 逆序数组元素 for (int i = 0; i < n / 2; i++) { int temp = a[i]; a[i] = a[n - 1 - i]; a[n - 1 - i] = temp; } // 输出逆序后的数组 for (int i = 0; i < n; i++) { if (i > 0) { cout << " "; } cout << a[i]; } cout << endl; return 0; } ``` 代码解释 1. 读取数组元素个数:使用`cin`读取一个正整数`n`,表示数组中元素的个数。 2. 读取数组元素:使用`for`循环读取`n`个正整数,存储到数组`a`中。 3. 逆序数组元素:使用`for`循环将数组`a`中的元素逆序存放。交换`a[i]`和`a[n - 1 - i]`,直到`i`达到`n / 2`。 4. 输出逆序后的数组:使用`for`循环输出逆序后的数组,每两个整数之间使用一个空格分隔。 复杂度分析 - 时间复杂度:$O(n)$,其中`n`是数组的长度。主要时间开销在于逆序数组元素和输出数组元素。 - 空间复杂度:$O(n)$,主要空间开销在于存储数组元素。 ######[AI问答 | 428点数解答 | 2025-11-28 21:09:16]

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