logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【优选算法2】滑动窗口经典算法面试题

本文总结了多个滑动窗口算法的经典题目及其解法,包括长度最小的子数组、无重复字符的最长子串、最大连续1的个数III等。通过分析暴力枚举的优化过程,揭示了滑动窗口的核心思想:利用单调性和同向双指针减少重复计算。针对每道题目,详细探讨了如何将问题转化为滑动窗口模型,并重点分析了边界条件处理、哈希表优化等关键点。特别强调了不同题目中更新结果的时机选择、有效字符统计等易错环节,并提供了反向思考等解题技巧。这

文章图片
#算法#c++#面试 +1
改造红黑树实现封装 map/set:感受C++ 标准容器的精妙设计与底层实现

本文详解如何通过红黑树封装实现STL中的map和set容器。核心思路是利用仿函数提取键值,使单棵红黑树能同时支持map(kv结构)和set(k结构)。关键实现包括:1) 模板参数改造,使用通用类型T替代KV;2) 通过仿函数回调获取键值;3) 迭代器实现基于中序遍历的++/--操作;4) 解决键值不可修改问题(set用const Key,map固定pair的Key);5) 完善Insert返回pa

文章图片
#开发语言#c++#数据结构 +2
到底了