Hi! I'm an expert C++ programmer, and I'm very familiar with the standard library's facilities for the containers you're insterested in: std::map, std::unordered_map (hashmaps), std::set and std::unordered_set. I'm also quite familiar with working with std::hash (using it on containers, writing custom hashes, etc.)
Of course, if you're not insterested in the standard library, and instead need a custom solution, I can also make it for you. It will take more time, though. We can schedule a time to discuss it.