Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на C/С++

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

TargeTSan

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору


Код:
 
#include <vector>
#include <algorithm>
 
template<typename T>
class vector_compare
{
public:
  vector_compare(size_t field): _field(field) { }
  bool operator () (const std::vector<T>& first, const std::vector<T>& second) const
  {
    // один из векторов слишком короткий, применяем стандартную процедуру
    if (first.size() <= _field || second.size() <= _field)
      return first < second;
    // иначе сортируем по столбцу
    return first[_field] < second[_field];
  }
protected:
  size_t _field;
};
 
int main(int argc, char** argv)
{
  std::vector< std::vector<int> > ints; // Вектор векторов
  size_t column;                        // Столбец для сортировки
   
  // Инициализация вектора векторов и номера столбца: вставить здесь
   
  // сортировка
  std::sort(ints.begin(), ints.end(), vector_compare<int>(column));
  return 0;
}
 


Всего записей: 21 | Зарегистр. 12-10-2008 | Отправлено: 18:11 12-11-2008 | Исправлено: TargeTSan, 19:01 12-11-2008
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Вопросы по программированию на C/С++


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru