Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Chương trình C++ đảo ngược mảng tại chỗ

Cho mảng n phần tử. Đảo ngược các phần tử trong mảng (in-place) và hiển thị. Không in ngược, phải đổi chỗ thực tế.

Ví dụ: n=9, arr=[2,5,6,4,7,8,3,6,4] → [4,6,3,8,7,4,6,5,2]

Giải thuật

  • Vòng lặp i từ 0 đến n/2 - 1:
    • temp = arr[i]
    • arr[i] = arr[n - i - 1]
    • arr[n - i - 1] = temp
  • In mảng đã đảo

Ví dụ minh họa

#include <iostream> 
using namespace std; 

int main(){ 
    int n = 9; 
    int arr[n] = {2,5,6,4,7,8,3,6,4}; 
    int temp; 
    for(int i = 0; i<n/2; i++){ 
        temp = arr[i]; 
        arr[i] = arr[n-i-1]; 
        arr[n-i-1] = temp; 
    } 
    for(int i = 0; i < n; i++){ 
        cout << arr[i] << " "; 
    } 
} 

Đầu vào

9, {2,5,6,4,7,8,3,6,4}

Đầu ra

4 6 3 8 7 4 6 5 2