Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

โปรแกรม C++ กลับลำดับสมาชิกในอาเรย์ (In-place)


สมมติว่ามีอาเรย์ n สมาชิก ต้องกลับลำดับสมาชิกในอาเรย์จริง (in-place) แล้วแสดง ไม่ใช่พิมพ์ย้อนหลัง

เช่น n = 9 arr = [2,5,6,4,7,8,3,6,4] ผลลัพธ์: [4,6,3,8,7,4,6,5,2]

ขั้นตอนการแก้ปัญหา

  • วนลูป i = 0 ถึง n/2 - 1:
    • temp := arr[i]
    • arr[i] := arr[n - i - 1]
    • arr[n - i - 1] := temp
  • วนลูปพิมพ์ arr[i] ทุกตัว

ตัวอย่างโค้ด

#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] << " "; }

อินพุต

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

เอาต์พุต

4 6 3 8 7 4 6 5 2