quicksort.h

Epic cinematic scores, sweeping orchestral movements, heroic themes, and stirring emotional peaks, adventure,

July 27th, 2024suno

가사

#pragma once #ifndef ORDERING_DEFINED #define ORDERING_DEFINED typedef enum { Ordering_LessThan = -1, Ordering_Equal = 0, Ordering_GreaterThan = 1, } Ordering; void _null_write_cb(void* userdata, void* loc) { (void)userdata; (void)loc; return; } #endif typedef ptrdiff_t ssize_t; void quicksort_swap(void* write_cb_userdata, char* a, char* b, ssize_t elem_size, void (*write_cb)(void*, void*)) { for (ssize_t i = 0; i < elem_size; i++) { char tmp = a[i]; a[i] = b[i]; b[i] = tmp; } write_cb(write_cb_userdata, (void*)a); write_cb(write_cb_userdata, (void*)b); } ssize_t partition( void* write_cb_userdata, void* cmp_cb_userdata, void* elems_void, ssize_t elem_size, ssize_t low, ssize_t high, void (*write_cb)(void*, void*), Ordering (*cmp_cb)(void*, void*, void*) ) { char* elems = (char*)elems_void; char* pivot = elems+high*elem_size; //quicksort_swap(write_cb_userdata, pivot, elems+high*elem_size, elem_size, write_cb); ssize_t i = low-1; for(ssize_t j = low; j < high; j++) { char* a = elems+j*elem_size; if (cmp_cb(cmp_cb_userdata, a, pivot) <= 0) { i += 1; quicksort_swap(write_cb_userdata, elems + i*elem_size, elems+ j*elem_size, elem_size, write_cb); } } quicksort_swap(write_cb_userdata, elems +(i+1)*elem_size, elems +high*elem_size, elem_size, write_cb); return i+1; } #include <stdlib.h> #include <time.h> int partition_r( void* write_cb_userdata, void* cmp_cb_userdata, void* elems_void, ssize_t elem_size, ssize_t low, ssize_t high, void (*write_cb)(void*, void*), Ordering (*cmp_cb)(void*, void*, void*) ) { char* elems = (char*)elems_void; srand(time(NULL)); int random = low + rand() % (high - low); quicksort_swap(0, elems+random*elem_size, elems+high*elem_size, elem_size, _null_write_cb); return partition(write_cb_userdata, cmp_cb_userdata, elems_void, elem_size, low, high, write_cb, cmp_cb); } void quicksort_impl( void* write_cb_userdata, void* cmp_cb_userdata, void* elems, ssize_t elem_size, ssize_t elem_low, ssize_t elem_high, void (*write_cb)(void*, void*), Ordering (*cmp_cb)(void*, void*, void*) ) { if (elem_low < elem_high) { ssize_t index = partition_r(write_cb_userdata, cmp_cb_userdata, elems, elem_size, elem_low, elem_high, write_cb, cmp_cb); quicksort_impl(write_cb_userdata, cmp_cb_userdata, elems, elem_size, elem_low, index-1, write_cb, cmp_cb); quicksort_impl(write_cb_userdata, cmp_cb_userdata, elems, elem_size, index+1, elem_high, write_cb, cmp_cb); } } void quicksort( void* write_cb_userdata, void* cmp_cb_userdata, void* elems, size_t elem_size, size_t elem_len, void (*write_cb)(void*, void*), Ordering (*cmp_cb)(void*, void*, void*) ) { if (!write_cb) { write_cb=_null_write_cb; } quicksort_impl(wri

추천

Sa Malayong Lupain
Sa Malayong Lupain

pop acoustic melodic

Dreaming High 2
Dreaming High 2

opera classic soprano

Nco Koj Dua
Nco Koj Dua

melancholic

機器人是我家一員 02(remix)
機器人是我家一員 02(remix)

rap.guitar,piano,Trompet,Electronic.Happiness.synthetic female.

A CELLO&PIANO concerto that relaxes my mind vol.2
A CELLO&PIANO concerto that relaxes my mind vol.2

CELLO&PIANO Concerto, relaxation music, Relaxation music, Beethoven music style, lhigh quality sound

Mr. Buddy
Mr. Buddy

danceable italian disco

Breaking Free
Breaking Free

driving rock

Soothing Resonance
Soothing Resonance

instrumental,instrumental,new age,ambient,meditative

Silence Breaks the Chain
Silence Breaks the Chain

hip-hop and pop , dynamic beats, and uplifting lyrics , catchy melodies

Gabriel: Beatbox Rebel
Gabriel: Beatbox Rebel

epic motown, electro funk, turntablism, alt folk pop, dub new wave , pop synthpop, synthwave, experimental

小镇姑娘
小镇姑娘

Rock and Roll

Where we used to be
Where we used to be

melodic handsup with hardstyle elements

Ethereal Dreams_02
Ethereal Dreams_02

slow tempo ambient new age

Faded Echoes
Faded Echoes

EDM--Pop, Female Voice, upbeat,strong bassline

Acho el Gato
Acho el Gato

rhythmic flamenco strong

주기율표의 공간
주기율표의 공간

dynamic powerful hard rock

Moonlight Sonata (variation) | The Descent
Moonlight Sonata (variation) | The Descent

post-(the seminal work of doodoopoopoo.com, their full evil soul poured out into the blood of piano) gothline