std :: sort на std :: vector - PullRequest
       23

std :: sort на std :: vector

0 голосов
/ 04 августа 2010

У меня есть std::vector<std::string>, который будет содержать цифры и символы (один символ).Я бы хотел, чтобы сначала были отсортированы числа, за которыми следуют символы ... поэтому у меня есть перемешанный вектор строк в качестве входных данных, а после сортировки я хочу, чтобы это было 1,2,3,5,7,9,10,В, С, D.Но я думаю, сортировка также сравнивает размеры входных данных, и, следовательно, если мой вектор имеет числа различной длины, я получаю неправильный вывод.Например, выполнение std::sort (vec.begin(),vec.end()) для 9,4,5,2,10,11,A,D,B,E,C возвращает 10,11,2,4,5,9,A,B,C,D,E.

Как мне исправить мою ошибку и что мне не хватает?

Спасибо,
Саян

1 Ответ

1 голос
/ 04 августа 2010

Напишите нелексикографическую процедуру сравнения и передайте ее вместе с итераторами в std :: sort.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...