根据条件删除二维vector中的某一维数据

  #include 
  #include 
  #include  
  using namespace std;
  int main()
  {
      vector<int> a;
      vector<int> b;
      vector<int> c;
      a.push_back(1);
      a.push_back(2);
      a.push_back(3);
  
      b.push_back(4);
      b.push_back(5);
      b.push_back(6);
  
      c.push_back(7);
      c.push_back(8);
      c.push_back(9);
  
      vector<vector<int> > nums;
      nums.push_back(a);
      nums.push_back(b);
      nums.push_back(c);
      for (vector<vector<int> >::iterator it = nums.begin(); it != nums.end();) {
          if (*((*it).begin()+1) == 5) {
              cout<<"(*it).begin()+1====="<<*((*it).begin()+1)<<endl;
              it = nums.erase(it);
          }else
          {
              ++it;
          }
      }
      for (vector< vector<int> >::const_iterator it = nums.begin();it!=nums.end();it++)
      {
          for(vector<int>::const_iterator it1 = (*it).begin();it1!=(*it).end();it1++)
          {
              cout<<*it1<<"  ";
          }
          cout << endl;
      } 
  return 0;
  }



//根据条件删除一维数组的某个数据
#include 
#include 
using namespace std;
void printList1(const vector<int> V)
{
    for (vector<int>::const_iterator it = V.begin(); it != V.end(); it++)
    {
        std::cout << *it << "  ";
    }
}
int main()
{
    vector<int> a;
    a.push_back(1);
    a.push_back(2);
    a.push_back(3);
    a.push_back(4);
    a.push_back(3);
    a.push_back(6);
    printList1(a);
    cout<<"-----------------"<<endl;
    for (vector<int>::iterator it = a.begin(); it != a.end();)
    {
        if((*it) == 3)
        {
            a.erase(it);
        }else
        {
            ++it;
        }
    }
    //a.clear();
    printList1(a);
    return 0;
}

你可能感兴趣的:(c++,算法,开发语言)