[libc++] Add benchmarks to the associative containers that don't go to the end of the container (#175005)
We have quite a few benchmarks for the associative containers which only
ever go to the end of the container. This is a relatively special case,
since it results in good branch prediction. However, users rarely have
that access pattern. This patch adds benchmarks where we don't just go
to the end where appropriate.
Fixes #162359