目录 CONTENTS
第 01章 你准备好了吗?
1.1 我是棒的! / 2
1.2 常见问题的准备 / 3
1.3 技术相关面试题的准备 / 4
1.4 “你是棒的!” / 5
第 02章 面试的本质
2.1 “面试”一词的含义 / 7
2.2 一次失败的面试 / 8
2.3 关于难题 / 10
2.4 本章总结 / 12
第 03章 求和问题
3.1 两数求和 / 14
3.2 两数求和-升序数组 / 17
3.3 面试之旅:三数求和 / 19
3.4 四数求和 / 22
第 04章 斐波那契数列
4.1 斐波那契数 / 26
4.2 使用矩阵乘法 / 27
4.3 面试之旅:爬楼梯 / 29
4.4 总结 / 31
第 05章 动态规划法
5.1 子序列和 / 33
5.2 分割等和子集 / 36
5.3 面试之旅:找零钱问题 / 39
5.4 本章总结 / 41
第 06章 堆栈
6.1 有效的括号 / 43
6.2 下一个更大元素 / 46
6.3 面试之旅:132模式 / 48
6.4 本章总结 / 52
第 07章 数字
7.1 杨辉三角 / 54
7.2 完全平方数 / 55
7.3 面试之旅:小好进制 / 58
7.4 本章总结 / 63
第 08章 树
8.1 路径总和 / 65
8.2 二叉搜索树中第K小的元素 / 68
8.3 面试之旅-监控二叉树 / 70
8.4 本章总结 / 73
第 09章 字符串
9.1 词典中长单词 / 75
9.2 无重复字符的长子串 / 77
9.3 面试之旅:交错字符串 / 79
9.4 本章总结 / 81
第 10章 字符串搜索
10.1 实现strStr() / 83
10.2 删除而得的单词 / 86
10.3 面试之旅:开心前缀 / 88
10.4 本章总结 / 90
第 11章 图
11.1 间隔种花 / 92
11.2 便宜的航班 / 94
11.3 单词搜索 / 97
11.4 面试之旅:长递增路径 / 99
11.5 本章总结 / 101
第 12章 生活趣题
12.1 买卖股票的时机 / 103
12.2 买卖股票的时机II / 104
12.3 保持城市天际线 / 106
12.4 天际线问题 / 108
12.5 盛更多水的容器 / 110
12.6 接雨水 / 112
12.7 本章总结 / 113
第 13章 系统架构设计
13.1 架构设计的原则 / 115
13.2 做好准备工作 / 118
13.3 面试实战 / 118
13.4 本章总结 / 119
第 14章 设计一个命令行界面
14.1 需求分析 / 121
14.2 功能详解:创建合并请求 / 122
14.3 安全性 / 123
14.4 本章总结 / 125
第 15章 设计一个短网址服务
15.1 需求分析 / 127
15.2 功能详解:高可用性 / 129
15.3 安全性 / 130
15.4 本章总结 / 131
第 16章 设计一个聊天系统
16.1 需求分析 / 133
16.2 功能详解:并发访问处理 / 134
16.3 安全性 / 136
16.4 本章总结 / 136
第 17章 设计一个电商系统
17.1 需求分析 / 138
17.2 功能详解:搜索功能 / 140
17.3 安全性 / 141
17.4 本章总结 / 141
第 18章 笑看面试
18.1 遇到不会的问题时? / 143
18.2 后一个问题,你准备好了吗? / 143