`

bit count in c (2) -- precompute

    博客分类:
  • c
c 
阅读更多

 pre

  Precompute_16bit.c

  Precompute_8bit.c


-------------------------------

 

Precompute_16bit.c

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include "../lib/ut.h"

//int main(void) {
int Precompute_16bit(void) {
  int max = 0x1u << 16;
  FILE * pFile;
  pFile = fopen ("src/lib/pre16.h","w");

  int i;
  fprintf(pFile, "#ifndef PRE16_H_\n");
  fprintf(pFile, "#define PRE16_H_\n\n");
  fprintf(pFile, "static int bits_in_16bits [%d]={\n", max);
  for (i = 0; i < max; i++) {
    if (i > 0) {
      if(i%32==0){
        fprintf(pFile, "\n");
      }
      fprintf(pFile, ", ");
    }
    int rlt = a2_bitcount(i);
    fprintf(pFile, "%d", rlt);
  }
  fprintf(pFile, "\n};\n\n");
  fprintf(pFile, "#endif /* PRE16_H_ */\n");
  fclose (pFile);
  return EXIT_SUCCESS;
}

 

Precompute_8bit.c

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include "../lib/ut.h"

//int main(void) {
int Precompute_8bit(void) {
  int max = 256;
  FILE * pFile;
  pFile = fopen ("src/lib/pre8.h","w");
  int i;
  fprintf(pFile, "#ifndef PRE8_H_\n");
  fprintf(pFile, "#define PRE8_H_\n\n");
  fprintf(pFile, "static int bits_in_char [%d]={\n", max);
  for (i = 0; i < max; i++) {
    if (i > 0) {
      if(i%32==0){
        fprintf(pFile, "\n");
      }
      fprintf(pFile, ", ");
    }
    int rlt = a2_bitcount(i);
    fprintf(pFile, "%d", rlt);
  }
  fprintf(pFile, "\n};\n\n");
  fprintf(pFile, "#endif /* PRE8_H_ */\n");
  fclose (pFile);
  return EXIT_SUCCESS;
}
  • 大小: 73 KB
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    require-precompute:使创建`require`实现变得更容易

    概述 创建一个(合理的子集)Node.js 风格的require(name)函数非常简单。 如果name以句点开头,则它是相对于调用require的文件的路径。 只需让每个文件使用的require跟踪当前路径即可。 如果name不以句点开头,则...

    Customizable Route Planning开源代码(CRP)

    - *customization*: Used to precompute the metric weights for the overlay graph. Call it with `./deploy/customization path_to_graph path_to_overlay_graph metric_output_directory metric_type`. We ...

    tif转rawmatlab代码-my_sidewindowfilter:my_sidewindowfilter

    precompute_size.py --min 512 python precompute_size.py --min 1024 python precompute_size.py --random python resize_image.py --file_name 512 python resize_image.py --file_name 1024 python resize_image....

    K-means python代码

    - `precompute_distances`: 是否预先计算邻近矩阵以提高效率。 ### 应用场景 K-means算法广泛应用于各种领域,如市场细分、图像分割、文本分类等。例如,在市场分析中,可以根据消费者的购买行为将客户分为不同的...

    调用sklearn库的K-Means聚类分析实例

    #class sklearn.cluster.KMeans(n_clusters=8, init=’k-means++’, n_init=10, max_iter=300, tol=0.0001, precompute_distances=’auto’, verbose=0, random_state=None, copy_x=True, n_jobs=1, algorithm=’...

    node2vec:node2vec算法的实现

    Node2Vec node2vec算法Aditya Grover,Jure Leskovec和Vid Kocijan的Python3实现。 安装pip install node2vec 用法import networkx as nxfrom node2vec import Node2Vec# Create a graphgraph = nx . fast_gnp_...

    聚类模型pdf

    - `precompute_distances`:是否预计算距离矩阵,默认为'auto'。当数据量较大时,预计算距离矩阵可能会提高效率。 - `verbose`:日志输出级别,默认为0,不输出任何日志信息。 - `random_state`:用于控制随机数生成...

    5.聚类模型1

    - `precompute_distances` 控制是否预先计算样本间的距离,可能影响内存使用和速度。 KMeans 算法的工作原理是通过迭代优化聚类中心,使得每个样本尽可能接近其所在簇的中心。在每次迭代中,样本被重新分配到最近...

    指纹增强代码matlab-norepeat:去重

    "precompute" writes a *.fpt file under precompdir with precomputed fingerprint for each input wav file. "merge" combines previously-created databases into an existing database; "newmerge" combines ...

    matlab分时代码-audfprint:基于地标的音频指纹

    "precompute" writes a *.fpt file under precompdir with precomputed fingerprint for each input wav file. "merge" combines previously-created databases into an existing database; "newmerge" combines ...

    ecdsa-wasm:ECDSAsecp256k1 + SHA-256

    ECSSA / secp256k1 + SHA-256 抽象的 这是的wasm版本 用于Node.js 节点test.js 如何使用 const ecdsa = require('ecdsa-wasm') // create secret key const sec = new ecdsa.SecretKey() ...// create precompute

    指纹增强代码matlab-whistler:用于记录和匹配人哨声与音频指纹数据库的桌面应用程序

    "precompute" writes a *.fpt file under precompdir with precomputed fingerprint for each input wav file. "merge" combines previously-created databases into an existing database; "newmerge" combines ...

    Amplify Shader Editor 1.8.8.000.zip

    Built-in Renderer, HD, URP, and Lightweight SRP Support IMPORTANT! Break To Components node renamed to Split NEW! HDRP/URP templates compatible with v10.x.x. NEW! Normal From Texture NEW! Bicubic ...

    react-native-text-size:在布置文本之前准确测量文本并从您的应用中获取字体信息

    React本机文本大小 在布置文本之前准确地测量文本并从您的应用程序(Android和iOS)获取字体信息。 主要有两个功能: flatHeights用于同时获取不同文本块的高度,并针对或组件进行了优化。 另一个是measure ,它...

    计算几何:各种计算几何算法的实现

    并行化框架通过以下方法在DaCAlgorithm接口中形式化了分治算法的结构precompute perform input data precomputationdivide divide given problem into two subproblemsmerge merge solutions for a pair of ...

Global site tag (gtag.js) - Google Analytics