笔试算法通关(python实现)

news/2024/12/29 9:21:42/

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

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


http://www.ppmy.cn/news/985036.html

相关文章

Kubernetes那点事儿——存储之存储卷

Kubernetes那点事儿——存储之存储卷 前言一、K8s数据卷一、临时存储卷emptyDir二、节点存储卷hostPath三、网络存储NFS 前言 在K8s中用Volume为容器提供了外部的存储能力。 Pod需要设置卷来源(spec.volume)和挂载点(spec.containers.volumeM…

快速玩转 Llama2!阿里云机器学习 PAI 推出最佳实践(三)—— 快速部署 WebUI

本实践将采用阿里云机器学习平台PAI-EAS 模块针对 Llama-2-13B-chat 进行部署。PAI-EAS是模型在线服务平台,支持将模型一键部署为在线推理服务或AI-Web应用,具备弹性扩缩的特点,适合需求高性价比模型服务的开发者。 前言 近期,M…

基于飞桨paddle波士顿房价预测练习模型测试代码

基于飞桨paddle波士顿房价预测练习模型测试代码 导入基础库 #paddle:飞桨的主库,paddle 根目录下保留了常用API的别名,当前包括:paddle.tensor、paddle.framework、paddle.device目录下的所有API; import paddle #Lin…

【并发编程】ThreadLocal

从名字我们就可以看到 ThreadLocal 叫做线程变量,意思是 ThreadLocal 中填充的变量属于当前线程,该变量对其他线程而言是隔离的。 ThreadLocal 为变量在每个线程中都创建了一个副本,那么每个线程可以访问自己内部的副本变量。 static ThreadL…

JS在生产环境屏蔽console.log的方法以及意义

console.log:向web开发控制台打印一条消息,常用来在开发时调试分析。有时在开发时,需要打印一些对象信息,但发布时却忘记去掉console.log语句,这可能造成内存泄露。 在传递给console.log的对象是不能被垃圾回收 ♻️&…

C++多线程编程(第三章 案例1,使用互斥锁+ list模拟线程通信)

主线程和子线程进行list通信,要用到互斥锁,避免同时操作 1、封装线程基类XThread控制线程启动和停止; 2、模拟消息服务器线程,接收字符串消息,并模拟处理; 3、通过Unique_lock和mutex互斥方位list 消息队列…

本地编译rocketmq源码

源码下载 RocketMq下载 运行 这是rocketmq源码大致的业务分层,本地调试主要是启动nameserver和broker,其他的发送和接收的实现代码可直接使用example包中的官方例子,也可以自己编码代码实现。 启动namesrv包下的启动类,Namesrv…