C3D Toolkit  Kernel - 111348, Vision - 2.6.1.10
Файл tool_quick_sort.h

Функция сортировки. Подробнее...

#include <io_define.h>
#include <math_define.h>

Пространства имен

 c3d
 Объявление пространства имен C3D.
 

Функции

void KsQSort (void *base, size_t num, size_t width, KsQSortCompFunc compareFunc)
 Cортировка массива. Подробнее...
 
template<class Type >
void Swap (Type *arr, size_t ind1, size_t ind2)
 Перестановка 2 элементов в массиве. Подробнее...
 
template<class Type , class Type2 , class Type3 >
void InsertSort (Type *base, size_t num, KsQSortCompFunc compareFunc, Type2 *base2=c3d_null, Type3 *base3=c3d_null)
 Сортировка массива с возможностью синхронной перестановки элементов в двух других массивах. Эффективна для небольших массивов. Подробнее...
 
template<class Type , class Type2 , class Type3 >
void QuickSort (Type *base, size_t num, KsQSortCompFunc compareFunc, Type2 *base2=c3d_null, Type3 *base3=c3d_null)
 Сортировка массива с возможностью синхронной перестановки элементов в двух других массивах. Работает с массивами элементов, которые предоставляют оператор присваивания. Не гарантирует сохранение порядка равных элементов. Подробнее...
 
size_t KsAutoDelta (size_t count)
 Функция автоматического наращивания памяти Подробнее...
 

Подробное описание

Функция сортировки.

Функции

◆ KsQSort()

void KsQSort ( void *  base,
size_t  num,
size_t  width,
KsQSortCompFunc  compareFunc 
)
inline

Cортировка массива.

Реализует быструю сортировку. Сортирует на месте.

Аргументы
[out]base- Указатель на основание массива.
[in]num- Количество элементов массиве.
[in]width- Размер элемента массива в байтах.
[in]compareFunc- Указатель на функцию сравнения элементов первого массива. Аналог функции strcmp, предоставляемый пользователем для сравнения элементов массива. Принимает 2 указателя на элементы и возвращает: отрицательное значение, если 1<2; 0, если 1=2; положительное значение, если 1>2.

◆ KsAutoDelta()

size_t KsAutoDelta ( size_t  count)
inline

Функция автоматического наращивания памяти

Функция применяется в библиотеке шаблонов Sys для автоматического наращивания памяти SArray, RPArray, SQueue ...