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

Сортировка массива произвольного типа - C++

Восстановить пароль Регистрация
 
reeer24
0 / 0 / 0
Регистрация: 25.05.2011
Сообщений: 3
25.05.2011, 22:56     Сортировка массива произвольного типа #1
Помогите разобраться!
зачем swap и memswap для сортировки в этой программе

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
inline void swap(char& a, char& b)// Обмениваем элементы двух объектов 
{
  char temp=a;
  a=b;
  b=temp;
}
void memswap(char* a, char* b, size_t sz) {
  for (int k=0; k<sz; k++)
    swap(*a++,*b++);
}
 
void ssort(void* base, size_t n, size_t sz, CMP cmp)//сортируем массив символьного типа
{
  for (int i=1; i<n; i++)
   for (int j=n-1; j>=i; j--)
   {
     char* bj=(char*)base + j*sz;
     if (cmp(bj,bj-sz))
       memswap(bj,bj-sz,sz);
   }
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.05.2011, 22:56     Сортировка массива произвольного типа
Посмотрите здесь:

Сортировка массива с числами типа double C++
Дан файл произвольного типа. Создать его копию с новым именем. C++
C++ шифрование файлов произвольного типа
После ввода с клавиатуры произвольного одномерного массива целых чисел (объекта данного класса),в пределах целого типа вывести в два столбика положите C++
Динамический массив элементов произвольного типа C++
C++ Корень произвольного степени из произвольного числа, введенного с клавиатуры
C++ Собственная реализация контейнера для хранения значений произвольного типа

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
26.05.2011, 09:25     Сортировка массива произвольного типа #2
сортировка подразумевает перестановку сортируемых элементов
memswap() меняет содержимое буферов местами
swap() меняет содержимое символов местами
Yandex
Объявления
26.05.2011, 09:25     Сортировка массива произвольного типа
Ответ Создать тему
Опции темы

Текущее время: 05:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru