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

추천

Das Wandern ist des Müller Lust
Das Wandern ist des Müller Lust

Swahili tanzania, Bongo Flava, epic, dreamy

strawberry lemonade ⛱️🍹
strawberry lemonade ⛱️🍹

garage pop, dream pop, bedroom pop, lofi, vocals, beautiful voice, well produced, good composition, trendy, catchy intro

Two Broke Hearts Extended Vers.
Two Broke Hearts Extended Vers.

Chill-House, Bass, Drums, Heartbreaking, Piano, Male Voice

Love Will Win
Love Will Win

focus, lo-fi beats, native drums, climatic, trap, music beyond time

डोला रे
डोला रे

futuristic bollywood fusion edm with traditional instruments upbeat electro

Terus berjuan
Terus berjuan

Edm, Alan Walker, Bass Bosted,

Paper Trails
Paper Trails

rock, hard rock, post-grunge, electric folk rock, aggressive punk rock blues, energetic

Feel the Sound
Feel the Sound

Bluesy Guitar Riffs Dynamic Drumming Soulful Vocals Catchy Hooks and Melodies Dynamic SongStructure TexturedArrangements

Minotaur
Minotaur

orchestra, dark, symphonic, epic, grand, haunting violins, choir of voices

Siren
Siren

🚨⬈🚨⮕🚨⬊🚨⬊🚨⬈🚨⬈🚨⬈🚨⬈ 🚨⬈🚨⮕🚨⬊🚨⬊🚨⬈🚨⬈🚨⬈🚨⬈ 🚨⬈🚨⮕🚨⬊🚨⬊🚨⬈🚨⬈🚨⬈🚨⬈ ⬈⮕⬊⬈⮕⬊⬈⮕⬊⬈⮕⬊ !! !

Мы к вам приехали на час
Мы к вам приехали на час

Distorted. female robotic voice. fire. mutation funk, bounce drop, hyperspeed dubstep

Neon Fiesta
Neon Fiesta

Mexican punk rock, big melody and sharp lyrics

Bamboo Whispers
Bamboo Whispers

chamber music,modern classical,western classical music,classical music,ambient,introspective,calm,mellow,melancholic,warm,peaceful,uplifting,minimalistic,meditative,atmospheric,passionate,ethereal,nature,lush,soothing

声音世界 Dubstep
声音世界 Dubstep

China, folk, hard Dubstep

The Path
The Path

cinematic, anthemic, epic, electronic,

الأمل يعزف
الأمل يعزف

futuristic arabic fusion fast-tempo rhythmic edm

मराठीत असणरी फॅशन
मराठीत असणरी फॅशन

जल्लोषत्मक डान्स इलेक्ट्रोनिक

Summer serenade
Summer serenade

Song of Summer, Mutated funk, Bass drop, Psychedelic, hip hop, uplifting phonk, Opera Ballard, clear sky, dark Cabaret