quicksort.h

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

July 27th, 2024suno

Lyrics

#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

Recommended

Journey to the Stars
Journey to the Stars

epic pop orchestral

Та же чаша
Та же чаша

pop rhythmic emotional

luka
luka

rock, metal, guitar

Delta Blues
Delta Blues

1920s slow gospel, delta blues, deep south American, female spoken lyric

King Batarang
King Batarang

1995 hip hop east coast rap 130 bpm

Midnight Phonk
Midnight Phonk

dance groove electronic

Eidun Saeed (Happy Eid) Extended
Eidun Saeed (Happy Eid) Extended

Arab Metal, Key: D Min, BPM:160, soaring vocals, intricate riffs, driving drums, Arabic Oud, uplifting, -8 LUFS, 12 LU

Dudínský půlmaraton
Dudínský půlmaraton

instrumental,bluegrass,folk,country,northern american music,regional music

LOVE
LOVE

Newage, dreamy, soul, mysterious, sad ballad, fantastic, Alternative/Indie, Folk, opera, acoustic guitar

Against The World
Against The World

fun pop upbeat

Uptown Sneed
Uptown Sneed

male singer, 80s, pop-rock, action, upbeat

trapped
trapped

Psychedelic drone Psybient chuck parsons

ok la
ok la

smooth, jazz, triste e k-pop

요리 수업
요리 수업

rap, female vocals, trap, hip hop

Forbidden love
Forbidden love

Country, Pop, Rock, Saxophone, Male voice

News to Me
News to Me

uplifting, emotional, ballad, indie pop, jazz, electronica, j pop, melodic

A phobia song Version 5
A phobia song Version 5

acoustic, pop, lo-fi, mellow, emotional, switching volcals,

Echoes of Middle-Earth
Echoes of Middle-Earth

heroic choral orchestra dark ambient

Tiny King Fins
Tiny King Fins

anthemic rock raw

Midday Grocery Run V.2
Midday Grocery Run V.2

psychedelic drum and bass creole