1-04-01から1ヶ月間の記事一覧

飛びテーブル計算

#include <stdio.h> #include <stdlib.h> typedef unsigned long long U64; typedef unsigned short gtype; void init_leap_table(int bits, U64 *atab, U64 *btab, gtype *gtab, U64 *thresh) { int i; for (i=0; i< (1<</stdlib.h></stdio.h>

スキップテーブル計算

#include <stdio.h> #include <stdlib.h> #define malloc_int(len) (int *)malloc(sizeof(int)*len) typedef struct b_entry { int val; int hash; struct b_entry *next_gt, *next_lt; } b_entry; #define BHASH(x) ((unsigned int)(x)*54321*54321*54321) static b_entry *b_b</stdlib.h></stdio.h>…

Collatz 1

#include <stdio.h> #include <stdlib.h> typedef unsigned long long bignumber; typedef unsigned short gtype; void init_leap_table(int bits, bignumber *atable, bignumber *btable, gtype *gtable) { int i; for (i=0; i< (1<<bits); i++) { int a = (1<<bits); int b = i; int g = 0; // transform a*m+b (m>0) as …</bits);></stdlib.h></stdio.h>