Hướng dẫn các thuật toán STL trong C++
1. Các thuật toán không thay đổi chuỗi
Các thuật toán này không làm thay đổi các phần tử trong container mà chúng thao tác.
1.1 find và find_if
find(begin, end, value): Tìm phần tử đầu tiên bằng với value, trả về iterator (trả về end nếu không tìm thấy).
find_if(begin, end, predicate): Tìm phần tử đầu tiên thỏa mãn một điều kiện nhất định (pr ...
Đăng vào ngày 3 tháng 6 lúc 21:13
Tổng hợp thuật toán STL C++ (Phần 1)
1. Thuật toán không thay đổi dãy
Các thuật toán này không làm thay đổi các phần tử trong container mà chúng thao tác.
1.1 find và find_if
find(begin, end, value): Tìm phần tử đầu tiên bằng value, trả về iterator (trả về
end nếu không tìm thấy).
find_if(begin, end, predicate): Tìm phần tử đầu tiên thỏa mãn predicate.
find_end(begin, end, sub ...
Đăng vào ngày 1 tháng 6 lúc 22:58
Khám phá các hàm thao tác bit trong C++20: Kỹ thuật xử lý bit hiệu quả từ STL implementation
Khám phá các hàm thao tác bit trong C++20: Kỹ thuật xử lý bit hiệu quả từ STL implementation
C++20 giới thiệu bộ công cụ thao tác bit mạnh mẽ trong thư viện chuẩn, được triển khai hiệu quả trong dự án gh_mirrors/st/STL. Bài viết này sẽ hệ thống hóa cách sử dụng và triển khai底层 của các hàm này, giúp lập trình viên xử lý các tình huống thao tác ...
Đăng vào ngày 31 tháng 5 lúc 18:21
Các thao tác cơ bản với C++ STL và quản lý bộ nhớ động
Lặp qua các phần tử của một container
Cú pháp vòng lặp dựa trên phạm vi (range-based for loop) cung cấp một cách ngắn gọn để lặp qua tất cả các phần tử trong một container như vector, array, hoặc list.
for (int gia_tri : danh_sach_so) {
// Xử lý mỗi 'gia_tri' ở đây
}
Vòng lặp này tương đương với việc sử dụng iterator, nhưng cú pháp được đơ ...
Đăng vào ngày 28 tháng 5 lúc 14:29
Giải Quyết Các Bài Toán Trong AtCoder Beginner Contest 395
A - Strictly Increasing?
#### Ý tưởng
> Sử dụng mô phỏng.
#### Mã nguồn
Xem mã nguồn
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1e6 + 5;
vector<int> positions[MAXN];
void solve() {
int n, ans = INT_MAX;
cin >> n;
for (int i = 0; i < n; i++) {
int x;
cin >> x;
positions[x ...
Đăng vào ngày 26 tháng 5 lúc 04:59
Chiến lược tối ưu hóa mã C++ bởi trình biên dịch
Trong phần này, chúng ta sẽ tìm hiểu về các thuật toán không sửa đổi và sửa đổi chuỗi, cũng như các thuật toán sắp xếp và các thuật toán khác trong thư viện chuẩn C++.
1. Thuật toán không sửa đổi chuỗi
Các thuật toán này không thay đổi các phần tử của vùng nhớ mà chúng hoạt động.
1.1 find và find_if
find(bắt_đầu, kết_thúc, giá_trị): Tìm phần t ...
Đăng vào ngày 20 tháng 5 lúc 12:24