《算法通关之路》学习笔记,记录一下自己的刷题过程,详细的内容请大家购买作者的书籍查阅。
自己平常用的最多编程语言的就是python,这篇博客是将笔者边学边刷《算法通关之路》的题目跟代码记录下来,也参考了leetcode的官方题解,结合自己的思考对原作者的代码有一定的改动,所有题目都是来自于leetcode,几乎涵盖了leetcode和我们求职笔试中的全部题目类型。
chapter1数学之美
1-两数之和、15-三数之和、18-四数之和、454-四数相加II、16-最接近的三数之和、53-最大子序列和、179-最大数、166-分数到小数、368-最大整数子集、1175-质数排列
chapter2回文的艺术
680-验证回文串II、234-回文链表、9-回文数、5-最长回文子串、516-最长回文子序列、906-超级回文数
chapter3游戏之乐
38-外观数组、679-24点、37-解数独、289-生命游戏
chapter4深搜和广搜
113-路径总和 II、124-二叉树中的最大路径和、200-岛屿数量、305-岛屿数量 II
chapter5二分法
704-二分查找、153-寻找旋转排序数组中的最小值、875-爱吃香蕉的珂珂、69-x 的平方根、162-寻找峰值、410-分割数组的最大值
chapter6位运算
191-位1的个数、371-两整数之和、397-整数替换、136-只出现一次的数字、137-只出现一次的数字 II、260-只出现一次的数字 III
chapter7设计
155-最小栈、208-实现Trie(前缀树)、146-LRU 缓存、460-LFU 缓存、1206-设计跳表
chapter8双指针
11-盛最多水的容器、3-无重复字符的最长子串
chapter9动态规划
70-爬楼梯、198-打家劫舍、213-打家劫舍II、62-不同路径、322-零钱兑换、518-零钱兑换II
chapter10滑动窗口
239-滑动窗口最大值、76-最小覆盖子串、424-替换后的最长重复字符、567-字符串的排列
chapter11博弈问题
877-石子游戏、486-预测赢家、292-Nim 游戏、375-猜数字大小 II
chapter12股票问题
121-买卖股票的最佳时机、122-买卖股票的最佳时机 II、714-买卖股票的最佳时机含手续费、309-最佳买卖股票时机含冷冻期、188-买卖股票的最佳时机 IV、123-买卖股票的最佳时机 III
chapter13分治法
23-合并 K 个升序链表、215-数组中的第K个最大元素、240-搜索二维矩阵 II
chapter14贪心法
455-分发饼干、55-跳跃游戏、621-任务调度器、135-分发糖果、435-无重叠区间
chapter15回溯法
46-全排列、47-全排列 II、39-组合总和、40-组合总和 II、78-子集、90-子集 II
先挖一个坑,后面会总结各个题型的模板,对题目与代码有疑问和异议的同学欢迎来交流和斧正!
GitHub笔记本