The key ordering is defined by the map's type, so you can't change the ordering of a map. What you can do is create a new map of a different type that orders the keys differently.
Reversing the associated values is equivalent to reversing the keys. Reverse the values in a map:
1 2 3
auto first = map.begin(), last = map.end() ;
using std::swap ;
for( ; ( first != last ) && ( first != --last ) ; ++first ) swap( first->second, last->second ) ;