每日算法 — 使用java实现小波树:序列区间第K大与频率统计
一、算法概述 小波树(Wavelet Tree)是一种建立在数组序列上的静态分治数据结构,由西班牙学者 Francisco Claude 于 2008 年提出。它通过在每一个层级上按"当前比特位是 0 还是...
每日算法 — 使用java实现动态树:Link-Cut Tree路径查询与动态森林维护
一、算法概述 动态树(Dynamic...
每日算法 — 使用java实现树上差分:树形区间修改与路径统计
一、算法概述 树上差分(Tree Difference)是一种将"数组差分"思想延伸到树形结构上的算法。它能够在 O(1)...
每日算法 — 使用java实现概率DP:期望计算与状态转移方程
一、算法概述 概率动态规划(Probabilistic Dynamic Programming),简称概率...
每日算法 — 使用java实现快速沃尔什变换:子集卷积与异或卷积优化
一、算法概述 快速沃尔什变换(Fast Walsh-Hadamard Transform,简称 FWT)是一种基于"分治 + 蝶形运算"的快速变换算法,主要用于加速 位运算卷积。它可以在 O(n log n)...
每日算法 — 使用java实现Burrows-Wheeler变换:可逆字符串重排与Move-To-Front编码
Burrows-Wheeler变换(BWT)是1994年由Michael Burrows和David...
每日算法 — 使用java实现游程编码:Run-Length Encoding与位打包压缩
游程编码(Run-Length...
每日算法 — 使用java实现算术编码:区间细分与自适应概率模型
算术编码(Arithmetic Coding)是一种高效的无损熵编码技术,由Jorma...
每日算法 — 使用java实现插值搜索:有序数组的预测性位置估计与复杂度分析
插值搜索(Interpolation Search)是一种针对均匀分布有序数组的高效搜索算法,由W. W....