AI算法 每日算法 — 使用java实现九连环:递归分治与二进制状态递推求解 引言 九连环是中国传统智力玩具,由九个环套在剑形框上组成。解环规则为:想要摘下或装上第 k 个环,必须保证第 k−1 个环在框上,且第 1 到 k−2...
AI算法 每日算法 — 使用java实现跳表:概率性多层链表与O(log n)高效查找 引言 跳表(Skip List)是一种由 William Pugh 于1990年提出的概率性数据结构,它通过在有序链表上建立多级索引,实现了与平衡二叉搜索树相媲美的平均 O(log n)...
AI算法 每日算法 — 使用java实现蓄水池抽样:数据流环境下的无偏随机采样 引言 在大数据时代,数据往往以流的形式持续产生,总量可能达到 TB 甚至 PB 级别,无法全部加载到内存中处理。蓄水池抽样(Reservoir...
AI算法 每日算法 — 使用java实现树状数组:二进制索引与区间查询的O(log n)解法 引言 在竞赛编程和工程实践中,频繁遇到这样的需求:维护一个数组,支持快速修改某个元素的值,以及快速查询某个区间的和。如果使用普通数组,修改是 O(1)...