Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
EvgenyDrogba
0 / 0 / 0
Регистрация: 25.07.2012
Сообщений: 3
#1

Функция сортировки вектора и списка - C++

06.01.2014, 12:34. Просмотров 341. Ответов 1
Метки нет (Все метки)

Добрый день, помогите пожалуйста) Суть задания в том, что нужно написать функцию сортировки (Одну!) сразу для вектора и списка без использования итераторов, т.е. в main'е требуется передать в функцию либо объект класса вектора, либо объект класса списка (int main {.....sort (Vector v или List l)}.

Сделал с итераторами вот так, но препод попросил сортировать без итераторов:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
//template <class T>
template <class T>
void sort (T iter, T end)
{
    for  (;iter != end; ++iter)
    {
        T iter2 = iter;
        ++iter2;
        for (; iter2 != end; ++iter2)
        {
            if (*iter > *iter2)
                swap(*iter, *iter2);
        }
    }
}
Помогите, пожалуйста, кто может!)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.01.2014, 12:34     Функция сортировки вектора и списка
Посмотрите здесь:

Не срабатывает функция сортировки связного списка - C++
Добрый день! Не срабатывает функция сортировки связного списка. Как студент, буду благодарен за указания, в чём дефекты функции. ...

STL. Функция, которая будет искать элементы большее среднего арифметического вектора и удалять их из вектора - C++
у меня есть вектор, помогите пожалуйста дописать функцию, которая будет искать элементы большее среднего арифметического вектора и удалять...

Создать производный класс, в котором реализована функция умножения вектора на число и функция сложения двух векторов - C++
Write программу с использованием класса Вектор (не без помощи форумчанина), но необходимо создать производный класс, в котором реализована...

Алгоритм сортировки для вектора - C++
Ребята у меня есть структура типа: struct Set { int row; //строка в матрице int value; //значение, которое повторяется int...

Почему стандартная сортировка вектора std::sort намного быстрее сортировки вставками/пузырьком? - C++
Здравствуйте, объясните, пожалуйста, как реализована std::sort. Ясно, что через итераторы, но почему такой сильный выигрыш во времени (1.4...

Программа сортировки списка - C++
Помогите сделать программу пожалуйста. Программа считывает информацию о студентах (имя, оценка (от одного до десяти) ) и выводит их...

Функция сортировки - C++
А ваше есть ли функция для сортировки массива, если да то как ей пользоваться ?

Функция сортировки - C++
Здравствуйте,коллеги! Подскажите какую-нибудь функцию сортировки с наименьшим количеством операций сравнения. В общем необходимо сравнить...

Функция сортировки - C++
День добрый, пишу сортировку чисел, столкнулся с проблемой, комментирую в коде: #include &lt;iostream&gt; using namespace std; ...

Каковы варианты сортировки связного списка - C++
Дорого времени суток. Есть двусвязный список хранящий допустим int, какие есть варианты по его сортировки? Например: 1. Считать все...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gray_fox
What a waste!
1449 / 1178 / 61
Регистрация: 21.04.2012
Сообщений: 2,466
Завершенные тесты: 3
06.01.2014, 18:11     Функция сортировки вектора и списка #2
Так что ли?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
template <class T>
void sort (T iter, T end)
{
    for  (;iter != end; ++iter)
    {
        T iter2 = iter;
        ++iter2;
        for (; iter2 != end; ++iter2)
        {
            if (*iter > *iter2)
                swap(*iter, *iter2);
        }
    }
}
 
template<typename ForwardRange>
void sort(ForwardRange & range) {
   sort(range.begin(), range.end());
}
Ответ Создать тему
Опции темы

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