в цикл заполнения мапы, добавь чет типо
cout << j << ": " << text[j] << "; "; и посмотри, как твоя мапа заполняется елементами, потом открываем вывод и курим с мат. частью:/
1) нулевой элемент слово "уж" добавляется дважды, мапа обычная (а не мульти) значит никаких дублей ключей, значит мы перезапишем значение(0) на новое (4) когда повторно встретим в векторе то же слово;
2) мапа под капотом red-black-tree, у нас 14 элементов (от 0 до 14, арифм. прогрессия с шагом +1) значит в корне будет 7, левее узел с 3-ткой, правее с 10-ткой и т.д. Консоль и отображет тебе обход дерева в ширину. То, что ваше представление "о должном порядке" не соответствует виденью компилятора, тут уж извините, это необходимо для поддержания Search, removal, and insertion operations have logarithmic complexity (
https://en.cppreference.com/w/cpp/container/map)