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

추천

Coffee Delight
Coffee Delight

guitar, 90's hip-hop, scratching, beats, Sampling, electronic

Crown of Might
Crown of Might

female vocalist,rock,metal,symphonic metal,melodic,epic,orchestral

Глинтвейн
Глинтвейн

lullaby, dreamy, acoustic, piano, female voice

9002
9002

Sad, piano, piano solo, no voice, sad song, quiet,BPM83

Rockin' Sweetheart
Rockin' Sweetheart

clarinet fast 50s doo wop

Cheese 🧀
Cheese 🧀

Drum and base, UK Grime, Jazz, funky, Hip hop, slow, wordy, full volume vocals, solo rapper vocals

Escape
Escape

Backstroke,Alternative Rock,rap

Il Mondo di Sally
Il Mondo di Sally

j-pop electronic trap

甜蜜曲
甜蜜曲

Pop Ballad

מוכרים בחנות גלידה
מוכרים בחנות גלידה

פופ מלודי אקוסטי

閃耀 x4
閃耀 x4

chill,female vocals,K-R&B,new jack swing,acid jazz, jersey club,lo-fi,Pleasant rhythm,bass house,POP,piano,Shibuya-kei

Echo der Kulturwellen
Echo der Kulturwellen

sentimental,atmospheric,melodic,romanticism,prelude,classical music,western classical music,technical,soothing,meditative,acoustic,passionate,lonely,longing,melancholic,romantic,lush,anxious

Cosmic Echoes
Cosmic Echoes

slow rock ballad divine male bass vocals cybernetic epic guitar psychedelic

Monica in My Dreams
Monica in My Dreams

hyperpop electronic

brunori sas
brunori sas

acoustic guitar, 80s, synth

In My Sleep
In My Sleep

bass bass more bass piano full orchestra horns drums percussion violin harps flutes obe

Damn City is Killing Me
Damn City is Killing Me

men's choir motown atmospheric

russian bootie
russian bootie

russian deep voice polka