THƯ VIỆN <algorithm> TRONG C++
🛠️ Biên soạn bởi Học Tin Việt – Giúp các bạn lập trình hiệu quả hơn với các thuật toán có sẵn! 🚀🔢🔹 <algorithm> là gì?
<algorithm> là thư viện chuẩn của C++ chứa hơn 60 hàm xử lý dữ liệu phổ biến như:
📌 Sắp xếp, tìm kiếm, đếm phần tử, xáo trộn, đảo ngược,...
👉 Dùng được với mảng, vector, string, và các container STL khác!
✅ Cách dùng:
✅ Nên kết hợp với
#include <vector>hoặc#include <string>tùy mục đích sử dụng.
🧩 Các hàm quan trọng trong <algorithm>:
| Hàm | Chức năng | Ví dụ |
|---|---|---|
sort(begin, end) | Sắp xếp tăng dần | sort(arr, arr+n); |
reverse(begin, end) | Đảo ngược thứ tự phần tử | reverse(vec.begin(), vec.end()); |
count(begin, end, x) | Đếm số lần xuất hiện của x | count(vec.begin(), vec.end(), 5); |
find(begin, end, x) | Tìm phần tử đầu tiên bằng x | find(vec.begin(), vec.end(), x); |
max_element(begin, end) | Tìm phần tử lớn nhất | *max_element(arr, arr+n); |
min_element(begin, end) | Tìm phần tử nhỏ nhất | *min_element(vec.begin(), vec.end()); |
accumulate(begin, end, 0) | Tính tổng các phần tử (cần <numeric>) | accumulate(arr, arr+n, 0); |
binary_search(begin, end, x) | Tìm kiếm nhị phân (dữ liệu đã sắp xếp) | binary_search(a, a+n, 10); |
🧪 Ví dụ:
🖨️ Kết quả ví dụ:
📌 Mẹo học nhanh:
| Mục đích | Dùng hàm gì? |
|---|---|
| Sắp xếp | sort() |
| Tìm phần tử | find() / binary_search() |
| Đếm phần tử | count() |
| Đảo ngược | reverse() |
| Tìm max / min | max_element() / min_element() |
| Tính tổng | accumulate() |
📦 Bạn cũng có thể tự định nghĩa cách so sánh trong
sort()để sắp xếp theo điều kiện riêng!
Chủ đề:
cpp

