Tôi đang cố gắng tìm ra vấn đề sau.Tìm bất kỳ thành phần nào có toạ độ đầu tiên cụ thể trong bộ <pair>>
Giả sử tôi có container sau đây trong C++:
std::set<std::pair<int, int> > my_container;
bộ này (từ điển) được sắp xếp liên quan đến trật tự <
trên std::pair<int, int>
, đó là trật tự tự từ điển. Nhiệm vụ của tôi là tìm bất kỳ phần tử nào trong my_container
có toạ độ đầu tiên bằng, ví dụ x
và trả về trình lặp đó cho nó. Rõ ràng, tôi không muốn sử dụng find_if
, bởi vì tôi cần phải giải quyết điều này trong thời gian logarit.
tôi sẽ đánh giá cao bất kỳ lời khuyên về cách thức này có thể được thực hiện