summaryrefslogtreecommitdiffhomepage
path: root/misc/examples/priority.c
diff options
context:
space:
mode:
authortylov <[email protected]>2023-07-20 15:09:10 +0200
committertylov <[email protected]>2023-07-20 15:12:29 +0200
commit900295256d825fc323149cd223c49787f32a3696 (patch)
tree6c79cf4209e3975bb6865e2940b9cb56ea469c73 /misc/examples/priority.c
parent224a04f7fa7549ed94d2a1415eb25829e39a7cca (diff)
downloadSTC-modified-900295256d825fc323149cd223c49787f32a3696.tar.gz
STC-modified-900295256d825fc323149cd223c49787f32a3696.zip
Moved examples to sub-directories. Added cotask1.c cotask2.c examples.
Diffstat (limited to 'misc/examples/priority.c')
-rw-r--r--misc/examples/priority.c37
1 files changed, 0 insertions, 37 deletions
diff --git a/misc/examples/priority.c b/misc/examples/priority.c
deleted file mode 100644
index bf2e188a..00000000
--- a/misc/examples/priority.c
+++ /dev/null
@@ -1,37 +0,0 @@
-
-#include <stdio.h>
-#include <time.h>
-#include <stc/crand.h>
-
-#define i_key int64_t
-#define i_cmp -c_default_cmp // min-heap (increasing values)
-#define i_tag i
-#include <stc/cpque.h>
-
-int main(void) {
- intptr_t N = 10000000;
- crand_t rng = crand_init((uint64_t)time(NULL));
- crand_unif_t dist = crand_unif_init(0, N * 10);
-
- cpque_i heap = {0};
-
- // Push ten million random numbers to priority queue
- printf("Push %" c_ZI " numbers\n", N);
- c_forrange (N)
- cpque_i_push(&heap, crand_unif(&rng, &dist));
-
- // push some negative numbers too.
- c_forlist (i, int, {-231, -32, -873, -4, -343})
- cpque_i_push(&heap, *i.ref);
-
- c_forrange (N)
- cpque_i_push(&heap, crand_unif(&rng, &dist));
-
- puts("Extract the hundred smallest.");
- c_forrange (100) {
- printf("%" PRId64 " ", *cpque_i_top(&heap));
- cpque_i_pop(&heap);
- }
-
- cpque_i_drop(&heap);
-}