Sorry, your browser cannot access this site
This page requires browser support (enable) JavaScript
Learn more >

1. 什么是HyperLogLog? 1.1. 一句话描述 1.2. 核心问题 1.3. 传统方法的瓶颈 1.4. HyperLogLog方案 1.5. 核心思想 2. 算法原理详解 2.1. 直观理解(抛硬币实验) 2.2. 算法步骤 2.2.1. 步骤 1:哈希处理 2.2.2. 步骤 2:分桶统计 2.2.3. 步骤 3:更新寄存器 2.2.4. 步骤 4:基数估算 3....

1. 基本概念 2. 工作原理 2.1. 误判率公式 2.2. 最优哈希函数数量 3. 代码实现 4. 应用场景 4.1. 核心应用场景 4.1.1. 数据库与存储系统 4.1.2. 网络与缓存 4.1.3. 网络爬虫与去重 4.1.4. 网络安全 4.1.5. 大数据与流处理 4.1.6. 文件系统与存储 4.1.7. 分布式系统 4.1.8. 生物信息学 4.2. 适用场景特征...

1. 哈希函数原理 1.1. 基本概念 1.2. 哈希函数特性 1.3. 哈希冲突 2. 常用哈希算法 2.1. 非加密哈希函数 2.1.1. 多项式滚动哈希 2.1.2. DJB2 2.1.3. FNV-1/FNV-1a 2.1.4. Jenkins 2.1.5. MurmurHash 2.2. 加密哈希函数 2.2.1. MD5 2.2.2. SHA 2.3. 专...

1. Bitmap 原理 1.1. 基本概念 1.2. 核心功能 1.3. 核心思想 1.4. 存储效率 2. Bitmap 代码实现 2.1. 基础版本 2.2. 动态扩容 2.3. 压缩位图 2.4. 对比分析 3. Bitmap 应用场景 3.1. 4.1 大数据去重 3.2. 4.2 用户标签系统 3.3. 4.3 布隆过滤器(Bloom Filter) 4. 总结 ...

本文全面介绍 C/C++ 中的位运算符,从二进制存储概念引入,详细阐述6种位运算符的运算规则、常见用途,还介绍复合赋值运算符及使用注意事项,助你掌握此关键工具提升编程能力。

归约算法的原理归约算法是一种并行计算中常用的算法,用于将一组数据通过某种二元操作(如加法、乘法、最大值、最小值等)组合成单个结果。它的核心思想是通过分治策略,将大规模计算任务分解为多个小任务并行处理,然后逐步合并结果。 归约算法的主要特点: 时间复杂度:O(log n)(并行),O(n)(串行) 空间复杂度:O(1)(原地归约时) 适用于各种可结合、可交换的二元操作 广泛应用于并行计算、G...

1. 核心概念 2. std::chrono::system_clock 2.1. 功能与含义 2.2. 主要用途 2.3. 代码示例 3. std::chrono::steady_clock 3.1. 功能与含义 3.2. 主要用途 3.3. 代码示例 4. std::chrono::high_resolution_clock 4.1. 功能与含义 4.2. 主要用途 4.3. ...

1. C/C++跨平台开发时有哪些值得注意的事项? 1.1. 你知道如何选择C++标准的版本吗? 1.1.1. C++版本说明 1.1.2. 如何选择版本 1.1.3. 最佳实践 1.2. 源代码要如何保存,跨平台和跨IDE时才不会出现中文乱码? 1.2.1. 中文乱码问题与原因分析 1.2.2. 解决策略 1.3. 如何优雅的隔离平台的差异? 1.3.1. 用宏定义隔离...

1. C++ 编译器介绍 1.1. MSVC 1.1.1. Visual C++与Visual Studio的版本对应关系 1.1.2. 工具链的主要工具 1.2. GCC 1.2.1. GCC的主要优点 1.2.2. GCC的常用工具 1.2.3. MinGW 1.3. Clang/LLVM 1.3.1. Clang介绍 1.3.2. Clang与LLVM的关系 1.3...

1. 简单版本 2. 复杂版本 2.1. 菱形继承的模型 2.2. 多继承的类如何定义? 2.3. 如何解决菱形继承的重复对象问题? 2.3.1. 方法一:使用完全限定名 2.3.2. 方法二: 虚继承 3. 总结 在写这一主题的文章之前,在网上找到一篇很非常好的文章C++之继承与多态。就没有必要做重复造轮子的事件了,那就从这篇文章开始吧! 在c++中一个类可以从多个基类中派生(...