Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Chương trình C++ xóa phần tử khỏi vector

Giả sử chúng ta có vector chứa các phần tử. Thực hiện xóa bằng erase() theo chỉ số, cuối cùng in các phần tử còn lại. erase() nhận địa chỉ: v.begin()+index.

Ví dụ: v = [5,8,6,3,2,0,1,4], xóa chỉ số 2, 6, 5 → [5,8,3,2,0]. Giải thích: xóa idx 2 (giá trị 6) → [5,8,3,2,0,1,4]; xóa idx 6 (giá trị 4) → [5,8,3,2,0,1]; xóa idx 5 (giá trị 1) → [5,8,3,2,0].

Giải thuật

  • v.erase(v.begin()+2)
  • v.erase(v.begin()+6)
  • v.erase(v.begin()+5)
  • In các phần tử còn lại

Ví dụ minh họa

#include <iostream> 
#include <vector> 
#include <algorithm> 
using namespace std; 

int main(){ 
    vector<int> v = {5,8,6,3,2,0,1,4}; 
    v.erase(v.begin()+2); 
    v.erase(v.begin()+6); 
    v.erase(v.begin()+5); 
    for(int i = 0; i<v.size(); i++){ 
        cout << v[i] << " "; 
    } 
} 

Đầu vào

{5,8,6,3,2,0,1,4}

Đầu ra

5 8 3 2 0