本书《Grokking the Coding Interview: Patterns for Coding Questions》提供了一系列编码面试中常见的问题模式和解决方案,旨在帮助读者深入理解并掌握解题技巧。
1. 图案:推拉窗大小为K的最大总和子数组(简单)具有给定总和的最小子数组(简单)最长的含有K个不同字符的子字符串(中等难度)水果入篮问题(中等难度)不重复子字符串(困难级别)*替换后具有相同字母组成的最长子串(困难级别)替换后最长的连续字节序列(困难级别)*问题挑战1-字符串排列组合(困难级别)*问题挑战2-字符串变位词识别(极难)问题挑战3-包含特定子串的最小窗口大小(中等难度)*问题挑战4-单词串联生成器(极难)
2. 模式:使用两个指针进行目标总和配对查找(简单任务)删除重复字符序列(简单操作)排序数组中的平方值计算(基本步骤)三元组求解零总和问题(中等难度)寻找接近给定目标的三个数之和组合(中等复杂度)找到三个数字,使它们的总和小于一个特定数值且满足条件(中级挑战)找出乘积小于某个阈值的所有连续子数组*问题挑战1-实现四元组求解指定总和的问题解决方案(中等级别)*问题挑战2-比较包含退格键影响后的字符串内容相等性(中间难度级别)问题挑战3-最小窗口排序操作的执行(中级任务)
3. 模式:快慢指针在链表中的应用,检测循环结构存在与否(简单案例)查找单向链表中点位置的方法(基础练习)使用双指针技术解决与链表相关的复杂问题