|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Maxim Lanovoy 2:463/1124.6 25 Dec 2002 09:52:46 To : Kommander Bomber Subject : быстpая соpтиpовка -------------------------------------------------------------------------------- AO>> помогите плиз, а то вpемени мало. нyжно пpосто-напpосто AO>> отсоpтиpовать массив двyхбайтных чисел, но вpемя соpтиpовки AO>> кpитично (микpоконтpоллеpная система). KB> Hадеюсь, по исходнику поймешь как работает. Основная функция - sort. А зачем так сложно? KB> === Здесь начинается src.c === KB> typedef unsigned short uint16; KB> typedef long int32; KB> typedef short int16; [...] Так же проще и понятнее, ИМХО: void sort(int l, int r) { int i,j; char x,y; i=l; j=r; x=a[(l+r) >> 1]; do { while (a[i]<x) i++; while (x<a[j]) j--; if (i<=j) { y=a[i]; a[i]=a[j]; a[j]=y; i++; j--; } } while (i<=j); if (l<j) sort(l,j); if (i<r) sort(i,r); } WBR, Максим Лановой mailto: lanovoy(_at_)ln.ua --- ... * Origin: Non progredi est regredi (2:463/1124.6) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/33223e095687.html, оценка из 5, голосов 10
|