21xrx.com
2024-11-05 14:43:17 Tuesday
登录
文章检索 我的文章 写文章
C++删除数组中指定数的方法
2023-07-05 02:51:45 深夜i     --     --
C++ 删除 数组 指定数 方法

C++是一种广泛使用的编程语言,它支持各种数据类型和数据结构,包括数组。如果您需要从数组中删除指定的数字,那么C++提供了几种方法来实现这个目标。

一种常见的方式是使用std :: vector,它是一个动态数组,因此可以方便地添加或删除元素。您可以使用std :: remove算法将指定数字从向量中删除。代码示例如下:


#include <vector>

#include <algorithm>

using namespace std;

int main()

{

  vector<int> arr = 1;

  int toRemove = 3;

  arr.erase(remove(arr.begin(), arr.end(), toRemove), arr.end());

  return 0;

}

在这个示例中,我们使用std :: remove算法来查找并删除向量中的所有值为3的元素。该算法返回删除后的向量的结束迭代器,我们可以使用arr.erase方法从向量中删除所有不需要的元素。

另一种方式是使用普通数组。该方法有点棘手,因为我们不能直接从数组中删除元素,但我们可以使用另一个数组来覆盖不需要的元素。代码示例如下:


#include <iostream>

using namespace std;

int main()

{

  int arr[] = 4;

  int n = sizeof(arr) / sizeof(arr[0]);

  int toRemove = 3;

  int j = 0;

  

  for (int i = 0; i < n; i++) {

    if (arr[i] != toRemove) {

      arr[j] = arr[i];

      j++;

    }

  }

  

  n = j;

  for (int i = 0; i < n; i++) {

    cout << arr[i] << " ";

  }

  return 0;

}

在这个示例中,我们使用循环遍历数组并将所有不需要的元素复制到新数组中。最后,我们将n设置为删除元素后数组中的新大小,并使用循环打印新数组。

以上是两种从数组中删除指定数字的方法。每种方法都有其优缺点,具体取决于您的场景和要求。选择相应的方法来满足您的需求并使您的代码更加清晰和高效。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复