Задания по С++ — различия между версиями
Материал из SEWiki
Btv (обсуждение | вклад) м |
Smal (обсуждение | вклад) (→Задание merge sort) |
||
Строка 12: | Строка 12: | ||
Необходимо написать функцию сортировки слиянием.<br /> | Необходимо написать функцию сортировки слиянием.<br /> | ||
Сигнатура функции должны быть такой:<br /> | Сигнатура функции должны быть такой:<br /> | ||
− | < | + | <source lang="cpp">template<typename Iter><br /> |
− | std::list<typename Iter::value_type> mergeSort(Iter left, Iter right);</ | + | std::list<typename Iter::value_type> mergeSort(Iter left, Iter right);</source><br /> |
Исходные данные функция модифицировать не должна, в возвращаемом списке должны быть отсортированные элементы. | Исходные данные функция модифицировать не должна, в возвращаемом списке должны быть отсортированные элементы. | ||
Затем необходимо добиться, чтоб можно было сортировать по указателям:<br /> | Затем необходимо добиться, чтоб можно было сортировать по указателям:<br /> | ||
− | < | + | <source lang="cpp">int* array = new int[SIZE];<br /> |
− | mergeSort(array, array + SIZE);</ | + | mergeSort(array, array + SIZE);</source> |
''Рекомендации'': для merge можно воспользоваться <code>std::list::merge</code><br /> | ''Рекомендации'': для merge можно воспользоваться <code>std::list::merge</code><br /> |
Версия 16:16, 18 марта 2011
Содержание
Лабораторная работа №1
Задание
Лабораторная работа №2
Задание
Лабораторная работа №3
Задание merge sort
Необходимо написать функцию сортировки слиянием.
Сигнатура функции должны быть такой:
template<typename Iter><br />
std::list<typename Iter::value_type> mergeSort(Iter left, Iter right);
Исходные данные функция модифицировать не должна, в возвращаемом списке должны быть отсортированные элементы.
Затем необходимо добиться, чтоб можно было сортировать по указателям:
int* array = new int[SIZE];<br />
mergeSort(array, array + SIZE);
Рекомендации: для merge можно воспользоваться std::list::merge
для получения типа, на который указывает указатель, можно воспользоваться std::iterator_traits
Лабораторная работа №4
Задание
Лабораторная работа №5
Задание