在本教程中,我们将学习如何从给定范围内删除元素。让我们看看解决问题的步骤。
初始化数组和范围以从中删除元素。
初始化一个新的索引变量。
遍历数组。
如果当前索引不在给定范围内,则使用新的索引变量更新数组中的元素
递增新索引。
返回新索引。
让我们看一下代码。
#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++) { // 如果不在给定范围内,则添加更新元素 if (i <= l || i >= r) { arr[newIndex] = arr[i]; newIndex++; } } // 重现更新的索引 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