ในบทช่วยสอนนี้ เราจะเรียนรู้วิธีลบองค์ประกอบออกจากช่วงที่กำหนด มาดูขั้นตอนการแก้ปัญหากัน
-
เริ่มต้นอาร์เรย์และช่วงเพื่อลบองค์ประกอบออกจาก
-
เริ่มต้นตัวแปรดัชนีใหม่
-
วนซ้ำบนอาร์เรย์
-
หากดัชนีปัจจุบันไม่อยู่ในช่วงที่กำหนด ให้อัปเดตองค์ประกอบในอาร์เรย์ด้วยตัวแปรดัชนีใหม่
-
เพิ่มดัชนีใหม่
-
-
คืนค่าดัชนีใหม่
ตัวอย่าง
มาดูโค้ดกันเลย
#include <bits/stdc++.h>
using namespace std;
int deleteElementsInRange(int arr[], int n, int l, int r) {
int i, newIndex = 0;
for (i = 0; i < n; i++) {
// adding updating element if it is not in the given range
if (i <= l || i >= r) {
arr[newIndex] = arr[i];
newIndex++;
}
}
// returing the updated index
return newIndex;
}
int main() {
int n = 9, l = 1, r = 6;
int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int updatedArrayLength = deleteElementsInRange(arr, n, l, r);
for (int i = 0; i < updatedArrayLength; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
} ผลลัพธ์
หากคุณรันโปรแกรมข้างต้น คุณจะได้ผลลัพธ์ดังต่อไปนี้
1 2 7 8 9
บทสรุป
หากคุณมีข้อสงสัยใดๆ ในบทแนะนำ โปรดระบุในส่วนความคิดเห็น