C ++ STL (Thư viện mẫu chuẩn) là một tập hợp các lớp mẫu C ++ mạnh mẽ để cung cấp các lớp và hàm có mục đích chung với các mẫu triển khai nhiều thuật toán và cấu trúc dữ liệu phổ biến và thường được sử dụng như vectơ, danh sách, hàng đợi và ngăn xếp.
Nó là một thư viện của các lớp vùng chứa, thuật toán và trình vòng lặp. Nó là một thư viện tổng quát hóa và do đó, các thành phần của nó được tham số hóa. Kiến thức làm việc về các lớp mẫu là điều kiện tiên quyết để làm việc với STL.
Mẫu là một tính năng của ngôn ngữ lập trình C ++ cho phép các hàm và lớp hoạt động với các kiểu chung. Điều này cho phép một hàm hoặc lớp hoạt động trên nhiều kiểu dữ liệu khác nhau mà không phải viết lại cho từng kiểu
Thư viện mẫu chuẩn C ++ có ba thành phần được cấu trúc tốt sau đây -
1 vùng chứa
Vùng chứa được sử dụng để quản lý bộ sưu tập các đối tượng của một loại nhất định. Có một số loại vùng chứa khác nhau như deque, list, vector, map, v.v.
-
Vùng chứa trình tự - Các vùng chứa này triển khai các cấu trúc dữ liệu có thể được truy cập theo cách tuần tự.
- vectơ
- danh sách
- deque
- mảng
- forward_list
-
Bộ điều hợp vùng chứa - Chúng cung cấp một giao diện khác cho các vùng chứa tuần tự.
- hàng đợi
- priority_queue
- ngăn xếp
-
Vùng chứa liên kết - Chúng triển khai các cấu trúc dữ liệu được sắp xếp có thể được tìm kiếm nhanh chóng (độ phức tạp O (log n)).
- đặt
- nhiều tập hợp
- bản đồ
- đa bản đồ
-
Vùng chứa liên kết không có thứ tự - Các vùng chứa này triển khai các cấu trúc dữ liệu không có thứ tự có thể được tìm kiếm nhanh chóng
- unrdered_set
- unrdered_multiset
- uniquered_map
- unrdered_multimap
2 Thuật toán
Các thuật toán hoạt động trên các thùng chứa. Chúng cung cấp các phương tiện mà bạn sẽ thực hiện khởi tạo, sắp xếp, tìm kiếm và chuyển đổi nội dung của vùng chứa.
Thuật toán
- Sắp xếp
- Đang tìm kiếm
- Các thuật toán STL quan trọng
- Các thuật toán mảng hữu ích
- Hoạt động phân vùng
3 Trình lặp lại
Các trình lặp được sử dụng để duyệt qua các phần tử của bộ sưu tập các đối tượng. Các tập hợp này có thể là các vùng chứa hoặc tập hợp con của các vùng chứa.