Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Elfenlide
23 / 23 / 1
Регистрация: 15.04.2012
Сообщений: 183
#1

Сортировка собственных типов данных - C++

24.12.2012, 23:49. Просмотров 925. Ответов 1
Метки нет (Все метки)

Задача:
В соответствии с вариантом нужно реализовать шаблонную функцию (функции) для сортировки. Необходимо, чтобы разработанная функция(функции) позволяла сортировать массивы и векторы(std::vector<>) любых объектов(как встроенных типов, так и пользовательских), продемонстрировать это путём создания собственного класса , массив объектов которого нужно отсортировать. Сортировка: In-place merge sort. Bogosort.
Я вот что-то не могу понять что сделать то нужно, тоесть я так понял нужно сделать программу которая бы могла работать с такими строками:
C++
1
2
3
class sort{};
sort mas[10]; // и поехали
vector<sort> //и тоже делать что хочу именно с объектами класса sort.
Я правильно понял?
Если так то тогда хотел бы узнать, с чего начать данную программу? Сортировка это я так понял уже просто отдельная функция а не метод класса. Что тогда в классе должно быть?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.12.2012, 23:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сортировка собственных типов данных (C++):

Цвет собственных типов переменных в C++ - C++
Здрасте! Что необходимо сделать, чтобы собственные типы переменных в окне &quot;Код&quot; отображался синим цветом, а не чёрным? Вот, к примеру,...

Приведение типов собственных классов - C++
Добрый день, пусть есть класс class Line { public int x1,x2 ; public int y1,y2 ; Line (int X1,int X2, int...

Композиции на основе собственных типов - C++
Здравствуйте. Пытаюсь написать реализацию простенького хештебла на основе связных цепочек для хранения дубликатов столкнулся с...

Конвертирование в bool собственных типов - C++
Здравствуйте! Класс rnode оболочка над указателем для подсчета ссылок. Вот код: class rnode { private: cNode *ptr; ...

Вычисление собственных значений и собственных векторов матрицы. Метод скалярных произведений - C++
Курсовая работа!! Задание: &quot;Вычисление собственных значений и собственных векторов матрицы. Метод скалярных произведений&quot; Матрицу...

Метод итераций: нахождение собственных векторов и собственных значений матрицы - C++
Доброго времени суток. метод итерации нахождение собственных векторов и собственных значений матрицы - вот тема на которую нужно написать...

1
Avazart
Эксперт С++
7247 / 5419 / 297
Регистрация: 10.12.2010
Сообщений: 24,044
Записей в блоге: 17
25.12.2012, 00:38 #2
Варианты:

1. Для применение стандартной сортировки достаточно перегрузить операторы сравнения < > != == итд. в вашем классе
2. Можно определить функтур который будет определять как будут сравниваться объекты вашего класса
3. При поддержке нового стандарта можно использовать лямбда-выражения

Добавлено через 11 минут
Последний вариант :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <iostream>
#include <algorithm>
#include <vector>
#include <string>
//--------------------------------------------------------
using namespace std;
//--------------------------------------------------------
class my
{
  public:
   int id;
   string name;
 
   my(int _id=0, string _name=string() ):id(_id),name(_name){}
};
//--------------------------------------------------------
int main()
{
    std::vector<my> v;
    v.push_back(my(1,"first")  );
    v.push_back(my(2,"second") );
    v.push_back(my(3,"third ") );
 
    sort(v.begin(),v.end(),[](const my& a,const my& b){ return a.id>b.id; } );
 
    for_each(v.begin(),v.end(),[](const my& obj){ cout<<obj.id<<"\t"<<obj.name<<endl; } );
 
    return 0;
}
//--------------------------------------------------------
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.12.2012, 00:38
Привет! Вот еще темы с ответами:

Функция hmatrixevd из пакета alglib для поиска собственных значений и собственных векторов - C++
Добрый день. Нужно найти собственные значения и вектора комплексной эрмитовой матрицы. Под решение этой задачи подошла функция hmatrixevd ...

Вычисление собственных значений и собственных векторов матрицы - C++
Доброго времени суток всем. Собственно написал программу, реализует степенной метод. Проблема в округлении. 1 итерация- вычисление...

Вычисление собственных значений и собственных векторов матрицы - C++
Вычисление собственных значений и собственных векторов матрицы. Метод скалярных произведений Матрицу задаём произвольно! а дальше по...

Перегрузка операций и сортировка типов Char - C++
КАК в этой проге сделать правельно упорядочивание студентов и как перегруженные операции += и -= задать? #include &lt;stdio.h&gt; #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru