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

추천

Rise Up
Rise Up

edm groovy uplifting

Deniz üstü köpürür
Deniz üstü köpürür

Acoustic Guitar

Keep It Low
Keep It Low

gay anthem torch song orchestral disco

Widzę Piękno w Każdym Dniu
Widzę Piękno w Każdym Dniu

I see beauty in every day and every moment, gratitude, appreciation, daily joy, positivity, mindfulness, inspiration, ma

Always There
Always There

Boy band, Rock, Sad, R&B, pop

พราวในใจ
พราวในใจ

น่ารัก pop อบอุ่น

My Heart Goes (thump, thump)
My Heart Goes (thump, thump)

fusion, bossa nova, Neo-funk, sultry female vocals

unrequited (K-rnb)
unrequited (K-rnb)

female,soulful,sexy,electric guitar,synths,bass,drums,rnb,electronic guitar,saxophone,low,raspy,warm,bossa nova,slow

Adventure Knights
Adventure Knights

piano and harp medieval adventurous

Echoes of Desolation
Echoes of Desolation

heavy metal, dark synth, epic, bass heavy

Uncharted
Uncharted

Experimental Electronica Ambient Trip-hop Glitch Effects Deep Bass Layered Vocals Delay Effects Field Recordings

Neon Skies
Neon Skies

retro synthwave energetic

10th Century
10th Century

[Artcore], syncopated anime, sweet female vocals, emotional higher pitch voice

Единение с Высшими Силами
Единение с Высшими Силами

Anime Ending, Uplifting trance, Cheerful

Туман
Туман

Emo, raspy vocals, death growl, female vocals, violins, piano rock, ballad, soundtrack

Electric Strings
Electric Strings

energetic electronic dubstep