int类型由32位二进制数组成,Java中Integer.bitCount(int i)算法统计二进制数中1的 …
数论 – 组合数原理及编码运算
组合数计算原理 n个数字中随机选择m个进行全排列,共有 \small A_n^m = C_n^mA_m^m 种 …
Skip Lists – 跳表原论文解析
本文基于跳表作者William Pugh原论文进行原理解读和代码实现分析
Red Black Tree – 红黑树透彻分析
本文基于《算法第四版》中红黑树作者Robert Sedgewick的原理讲解及代码实现,从2-3树角度来观察和 …
二分查找 – 有序序列猜得快而准
二分查找 二分查找基于如下代码思想 int binarySearch(vector<int> …
关于指针 – 一些O(n)的奇特技巧
综述 主要是双指针和滑动指针技巧 双指针 双指针一般用于序列问题,其分配两个指针来完成算法任务,可将问题优化为 …
盲目搜索 – BFS思想及其应用
PAT-A1091 典型的搜索标记问题,需要考虑到过高的递归深度 栈溢出 问题,因此选用BFS策略 (¬、¬) …
减小访问状态空间 – 如何更优化搜索
DFS剪枝 PAT-A1103 枚举指数型加数 对状态空间的搜索即采用DFS枚举所有情况 因可包含相同状态,因 …
“短视”也能达到最优 – 贪心算法精讲
贪心思想 一般用来解决“最优化”问题。总是从局部选取最“好”的结果,通过局部最优来推导全局最优。 贪心策略并不 …
PAT – ADVANCED – 图算法精讲
本文主要讲解图的表示与经典算法在PAT解题中的算法选型、应用思路