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

추천

Тарас и Рома
Тарас и Рома

atmospheric electropop

Красивые Реснички
Красивые Реснички

guitar, electric guitar

Cy-Roids
Cy-Roids

High Energy Instumental Intro, Slowly Beats Increase, Cyberpunk Beats, Mid Energy Beats, Slowly Beats Fades, trap

Heartbeat on the Highway
Heartbeat on the Highway

acoustic, country, acoustic guitar, piano

Bebas dan Lepas
Bebas dan Lepas

acoustic pop

Dancing in the Rain
Dancing in the Rain

female singer, german ballad, Love Song

《墨色流年-女声》
《墨色流年-女声》

(Intro flute zheng and guqin) rock pop classical

Gym bunny snowflakes
Gym bunny snowflakes

Powerfull haunting dub rap chilled crisp vocals

Berdansa
Berdansa

mari berdansa denganku disetiap halaman buku. arungi tiap kata lihatlah bagaimana mereka merangkai huruf jadi bunga kat

Heartstrings n' Heavy Kicks
Heartstrings n' Heavy Kicks

lo-fi doo-wop-trap-swing-remix heartfelt drum handclaps twangy guitars melodic piano bass heavy 808s

名为爱
名为爱

china drama

Lost In The Shadows
Lost In The Shadows

Djent, Metalcore Breakdowns, Clean Male Vocals, Clean Female Vocals, Harsh Male Vocals, Harsh Female Vocals

離人憂-口語化版
離人憂-口語化版

Mandarin,Melancholic,Acoustic piano and Strings,Themes of Heartbreak and Loneliness,Pained Vocals,Ethereal,Spoken Word

The Whispered Wish
The Whispered Wish

sea shanty,

Djent Rando Mix #7-2
Djent Rando Mix #7-2

Djent, dance pop, washboard, electro, volksmusik, east coast hip hop, classical guitar, swing, oi, pop

Let's Win Together
Let's Win Together

reguetón dynamic