原地翻转数组
int main() {
const int n = 8;
int head = 0, tail = n - 1;
int arr[n] = { 1, 2, 3, 4, 5, 6, 7, 8 };
while (head < tail) {
int temp = arr[head];
arr[head] = arr[tail];
arr[tail] = temp;
// 指针向中间移动
++head;
--tail;
}
// 打印数组
for (size_t i = 0; i < n; i++)
{
cout << arr[i] << "\t";
}
cout << endl;
cin.get();
借住变量翻转
void test() {
const int n = 8;
int arr[n] = { 1, 2, 3, 4, 5, 6, 7, 8 };
// 1. 直接创建一个新数组,遍历元素反向填入
int newArr[n];
for (size_t i = 0; i < n; i++)
{
newArr[n - i - 1] = arr[i];
}
// 打印数组
for (size_t i = 0; i < n; i++)
{
cout << newArr[i] << "\t";
}
cout << endl;
}