Нет встроенного способа сделать это.Относительно простым способом является создание map<string, size_t>
, содержащего счетчики каждого элемента (просто итерируйте по вашему входному вектору, увеличивая счетчик для каждой строки, которую вы видите).Затем запишите все ключи на карте в вектор и std::sort
этот вектор с компаратором, который сравнивает число с карты.
Это включает в себя больше поисков на карте, чем строго необходимо, поэтому вы могли бы вместо этого написатьвектор пар с карты, затем сортируйте пары и, наконец, создайте свой вектор строк из отсортированных пар.