分类: AI算法
每日算法 — 使用java实现最长有效括号:单调栈与动态规划匹配优化
算法背景 给定一个只包含 '(' 和 ')' 的字符串,找出其中最长有效(匹配)括号子串的长度。例如 "(()" 的最长有效括号子串是 "()",长度为2;而 ")()())" 的最长有效括号子串是...
每日算法 — 使用java实现旋转数组:二分查找与边界判定算法
算法背景 旋转数组是将一个原本有序的数组在某一个下标处进行旋转(即将前面部分移到后面)得到的数组。例如 [0,1,2,4,5,6,7] 在下标3处旋转后变为 [4,5,6,7,0,1,2]。...
每日算法 — 使用java实现哈希表:链地址法与开放寻址冲突解决
算法背景 哈希表(Hash Table)是一种通过哈希函数将键映射到表中位置来实现快速查找的数据结构。理想情况下,查找、插入和删除操作的时间复杂度均为...
每日算法 — 使用java实现填字游戏:交叉约束传播与字典树前缀匹配
引言 填字游戏(Crossword...
每日算法 — 使用java实现桶排序:分桶策略与均匀分布数据排序
引言 桶排序(Bucket Sort)是一种基于分治思想的线性时间排序算法。当输入数据服从均匀分布时,桶排序的平均时间复杂度可以达到 ( O(n)...