您好,欢迎来到聚文网。 登录 免费注册
labuladong的算法小抄

labuladong的算法小抄

  • 字数: 588000
  • 装帧: 平装
  • 出版社: 电子工业出版社
  • 作者: 付东来
  • 出版日期: 2021-01-01
  • 商品条码: 9787121399336
  • 版次: 1
  • 开本: 16开
  • 页数: 432
  • 出版年份: 2021
定价:¥101 销售价:登录后查看价格  ¥{{selectedSku?.salePrice}} 
库存: {{selectedSku?.stock}} 库存充足
{{item.title}}:
{{its.name}}
精选
内容简介
本书专攻算法刷题,训练算法思维,应对算法笔试。注重用套路和框架思维解决问题,以不变应万变。第1章列举几个最常见的算法类型以及对应的解题框架思路,包括动态规划、回溯、广度优先搜索及双指针、滑动窗口等算法技巧。第2章用动态规划的通用思路框架解决十几道经典的动态规划问题,例如,正则表达式、背包问题,同时还介绍了如何写状态转移方程,如何进行状态压缩等技巧。第3章介绍了数据结构相关的算法,例如,二叉树相关的题目解法,也包括LRU、LFU这种面试常考的算法原理。第4章介绍回溯算法、广度优先算法等核心套路在算法题中的运用,巩固对算法框架的理解。第5章讲解了一些高频题目,每道题目可能会结合多种算法思路,也可能有多种解法,读完这一章,你就可以独自遨游题海啦。
目录
第1章核心套路篇
1.1学习算法和刷题的框架思维
1.1.1数据结构的存储方式
1.1.2数据结构的基本操作
1.1.3算法刷题指南
1.1.4最后总结
1.2动态规划解题套路框架
1.2.1斐波那契数列
1.2.2凑零钱问题
1.2.3最后总结
1.3回溯算法解题套路框架
1.3.1全排列问题
1.3.2N皇后问题
1.3.3最后总结
1.4BFS算法套路框架
1.4.1算法框架
1.4.2二叉树的最小高度
1.4.3解开密码锁的最少次数
1.5双指针技巧套路框架
1.5.1快、慢指针的常用算法
1.5.2左、右指针的常用算法
1.6我写了首诗,保你闭着眼睛都能写出二分搜索算法
1.6.1二分搜索框架
1.6.2寻找一个数(基本的二分搜索)
1.6.3寻找左侧边界的二分搜索
1.6.4寻找右侧边界的二分搜索
1.6.5逻辑统一
1.7我写了一个模板,把滑动窗口算法变成了默写题
1.7.1最小覆盖子串
1.7.2字符串排列
1.7.3找所有字母异位词
1.7.4最长无重复子串
第2章动态规划系列
2.1动态规划设计:最长递增子序列
2.1.1动态规划解法
2.1.2二分搜索解法
2.2二维递增子序列:信封嵌套问题
2.2.1题目概述
2.2.2思路分析
2.2.3最后总结
2.3优选子数组问题
2.3.1思路分析
2.3.2最后总结
2.4动态规划答疑:很优子结构及dp遍历方向
2.4.1很优子结构详解
2.4.2dp数组的遍历方向
2.5经典动态规划:最长公共子序列
2.6经典动态规划:编辑距离
2.6.1思路分析
2.6.2代码详解
2.6.3动态规划优化
2.6.4扩展延伸
2.7子序列问题解题模板:最长回文子序列
2.7.1两种思路
2.7.2最长回文子序列
2.7.3代码实现
2.8状态压缩:对动态规划进行降维打击
2.9以最小插入次数构造回文串
2.9.1思路分析
2.9.2状态转移方程
2.9.3代码实现
2.10动态规划之正则表达式
2.10.1思路分析
2.10.2动态规划解法
2.11不同的定义产生不同的解法
2.11.1第一种思路
2.11.2第二种思路
2.11.3最后总结
2.12经典动态规划:高楼扔鸡蛋
2.12.1解析题目
2.12.2思路分析
2.12.3疑难解答
2.13经典动态规划:高楼扔鸡蛋(进阶)
2.13.1二分搜索优化
2.13.2重新定义状态转移
2.13.3还可以再优化
2.14经典动态规划:戳气球问题
2.14.1回溯思路
2.14.2动态规划思路
2.14.3写出代码
2.15经典动态规划:0-1背包问题
2.16经典动态规划:子集背包问题
2.16.1问题分析
2.16.2思路分析
2.16.3进行状态压缩
2.17经典动态规划:接近背包问题
2.18题目千百变,套路不会变
2.18.1线性排列情况
2.18.2环形排列情况
2.18.3树形排列情况
2.19动态规划和回溯算法,到底是什么关系
2.19.1回溯思路
2.19.2消除重叠子问题
2.19.3动态规划
第3章数据结构系列
3.1手把手教你写LRU缓存淘汰算法
3.1.1LRU算法描述
3.1.2LRU算法设计
3.1.3代码实现
3.2层层拆解,带你手写LFU算法
3.2.1算法描述
3.2.2思路分析
3.2.3代码框架
3.2.4LFU核心逻辑
3.3二叉搜索树操作集锦
3.3.1判断BST的合法性
3.3.2在BST中查找一个数是否存在
3.3.3在BST中插入一个数
3.3.4在BST中删除一个数
3.4接近二叉树的节点数为什么那么难算
3.4.1思路分析
3.4.2复杂度分析
3.5用各种遍历框架序列化和反序列化二叉树
3.5.1题目描述
3.5.2前序遍历解法
3.5.3后序遍历解法
3.5.4中序遍历解法
……

蜀ICP备2024047804号

Copyright 版权所有 © jvwen.com 聚文网