笔试算法通关(python实现)

《算法通关之路》学习笔记,记录一下自己的刷题过程,详细的内容请大家购买作者的书籍查阅。

自己平常用的最多编程语言的就是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

chapter16一些有趣的题目

229-多数元素 II、84-柱状图中最大的矩形、1185-一周中的第几天、365-水壶问题、458-可怜的小猪

chapter17一些通用解题模板

二分法(普通二分法、二分法变种)、回溯法、并查集、BFS、滑动窗口(窗口大小固定,最优解与窗口大小无关、窗口大小不固定,最优解为最小窗口、窗口大小不固定,最优解为最大窗口)、数学(判断素数、最大公约数、最小公倍数)

chapter18融会贯通

189-轮转数组、61-旋转链表、72-编辑距离、215-数组中的第K个最大元素、703-数据流中的第 K 大元素、230-二叉搜索树中第K小的元素、378-有序矩阵中第 K 小的元素、668-乘法表中第k小的数

chapter19解题技巧和面试技巧

1284-转化为全零矩阵的最少反转次数、73-矩阵置零、1291-顺次数、127-单词接龙、1277-统计全为 1 的正方形子矩阵、1297-子串的最大出现次数、289-生命游戏

GitHub笔记本

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jiawen9

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值