13 Hàm Thông Dụng Trong Vector

13 Hàm Thông Dụng Trong Vector

Khi nhắc tới C++ thì Vector là một phần không thể thiếu, nên trong bài viết này mình xin được tổng hợp một số hàm mà mình hay gặp trong khi học mời các bạn đọc tham khảo và góp ý.

  1. Khai báo
    • #include <vector>
  2. Khởi tạo
    • Cách 1: vector<kiểu dữ liệu> name;
    • Cách 2: vector<kiểu dữ liệu> name(size);
    • Cách 3: vector<kiểu dữ liệu> vectorA(vectorB);
  3. Trả về vị trí tham chiếu tới ... vector
    • Đầu: vt.begin()
    • Cuối: vt.end() // hoặc vt.begin() + vt.size()
  4. Thêm phần tử
    • Cách 1: vt.push_back(value); //thêm phần tử vào cuối của vector
    • Cách 2: vt[pos] = value; //gán giá trị như mảng
  5. Chèn
    •  vt.insert(pos, value); //chèn value vào vị trí pos
  6. Xóa phần tử
    • Cách 1: vt.pop_back(); //xóa phần tử cuối của vector
    • Cách 2: vt.erase(pos); //xóa 1 phần tử ở vị trí pos
    • Cách 3: vt.erase(first , last); //xóa phần tử từ vị trí first tới last
    • Cách 4: vt.clear(); //xóa tất cả phần tử trong vector
  7. Lấy số lượng phần tử
    • vt.size();
  8. Lấy phần tử
    • Cách 1: vt[pos] // truy cập trực tiếp vị trí pos (tính từ 0)
    • Cách 2: vt.fornt(); //lấy phần tử đầu vector
    • Cách 3: vt.back(); //lấy phần tử cuối vector
    • Cách 4: vt.at(pos); lấy phần tử vị trí pos (tính từ 0)
  9. Kiểm tra vector giỗng
    • vt.empty();
  10. Sắp xếp theo thứ tự tăng dần
    • sort(first, last); // sắp xếp từ vị trí first tới last
    • Ví dụ 1: sort(vt.begin(), vt.end()); //sắp xếp cả mảng
    • Ví dụ 2: sort(vt.begin()+2, vt.begin()+5); //sắp xếp các phần tử từ vị trí 2 tới 5
  11. Tìm kiếm
    • Cách 1: find // chi tiết cpp
    • Cách 2: search // chi tiết cpp
  12. Đảo ngược 
    • reverse(first, last);
    • Ví dụ 1: reverse(vt.begin(), vt.end());  //đảo ngược cả vector 
    • Ví dụ 2: reverse(vt.begin(), vt.begin()+2); //đảo ngược từ vị trí đầu tới vị trí đầu +2;
  13. Đổi 2 vector
    • swap(vta, vtb); //tất cả các phần tử của vta được gán cho vtb và ngược lại

Tổng Kết

Trên là phần ý kiến chủ quan của mình, nếu sai sót gì mình rất mong được các bạn phản hồi để mình có thể sửa đổi cho hoàn hảo hơn và có hàm gì mới lạ các bạn có thể comment để cho mình và nhiều bạn khác được tiếp thu thêm kiến thức mới. Cảm ơn các bạn đã đọc!!!

Tài liệu tham khảo: http://www.cplusplus.com/