当前位置 博文首页 > 数据结构和算法:2021年刷这500多道算法题,轻松进大厂

    数据结构和算法:2021年刷这500多道算法题,轻松进大厂

    作者:[db:作者] 时间:2021-07-29 12:40

    在这里插入图片描述

    想看更多算法题,可以扫描上方二维码关注我微信公众号“数据结构和算法”,截止到目前我已经在公众号中更新了500多道算法题,其中部分已经整理成了pdf文档,截止到目前总共有1000多页(并且还会不断的增加),可以在公众号中回复关键字“pdf”即可下载。


    大家好,我叫博哥,喜欢编程,尤其是喜欢算法,沉迷其中不能自拔,近3年来坚持在公众号上写算法题解,总共输出了 500多道题,其中不乏一些经典题型,都是以图文结合的方式,让算法变的不那么枯燥,通过这些文章,可以让你轻松入门。今天闲着没事就把之前写的一部分算法题整理出来,方便大家阅读,如果你觉得不错的话还可以点击收藏。

    「可以看下部分系列文章:」


    动态规划相关算法

    465. 递归和动态规划解三角形最小路径和

    430,剑指 Offer-动态规划求正则表达式匹配

    423,动态规划和递归解最小路径和

    413,动态规划求最长上升子序列

    411,动态规划和递归求不同路径 II

    409,动态规划求不同路径

    407,动态规划和滑动窗口解决最长重复子数组

    395,动态规划解通配符匹配问题

    376,动态规划之编辑距离

    370,最长公共子串和子序列


    回溯算法

    451,回溯和位运算解子集

    450,什么叫回溯算法,一看就会,一写就废

    442,剑指 Offer-回溯算法解二叉树中和为某一值的路径

    420,剑指 Offer-回溯算法解矩阵中的路径

    391,回溯算法求组合问题

    446,回溯算法解黄金矿工问题

    448,组合的几种解决方式


    DFS和BFS相关算法题

    455,DFS和BFS解被围绕的区域

    453,DFS和BFS解求根到叶子节点数字之和

    445,BFS和DFS两种方式解岛屿数量

    422,剑指 Offer-使用DFS和BFS解机器人的运动范围

    417,BFS和DFS两种方式求岛屿的最大面积


    双指针相关问题

    466. 使用快慢指针把有序链表转换二叉搜索树

    398,双指针求无重复字符的最长子串

    397,双指针求接雨水问题

    396,双指针求盛最多水的容器

    447,双指针解旋转链表

    449,快慢指针解决环形链表


    二叉树相关算法

    464. BFS和DFS解二叉树的所有路径

    458,填充每个节点的下一个右侧节点指针 II

    457,二叉搜索树的最近公共祖先

    456,解二叉树的右视图的两种方式

    444,二叉树的序列化与反序列化

    441,剑指 Offer-二叉搜索树的后序遍历序列

    440,剑指 Offer-从上到下打印二叉树 II

    439,剑指 Offer-从上到下打印二叉树

    435,剑指 Offer-对称的二叉树

    434,剑指 Offer-二叉树的镜像

    433,剑指 Offer-树的子结构

    414,剑指 Offer-重建二叉树

    403,验证二叉搜索树

    401,删除二叉搜索树中的节点

    400,二叉树的锯齿形层次遍历

    399,从前序与中序遍历序列构造二叉树

    388,先序遍历构造二叉树

    387,二叉树中的最大路径和

    375,在每个树行中找最大值

    374,二叉树的最小深度

    373,数据结构-6,树

    372,二叉树的最近公共祖先

    367,二叉树的最大深度


    链表相关算法

    463. 判断回文链表的3种方式

    462. 找出两个链表的第一个公共节点

    461. 两两交换链表中的节点

    460. 快慢指针解环形链表 II

    459. 删除链表的倒数第N个节点的3种方式

    432,剑指 Offer-反转链表的3种方式

    431,剑指 Offer-链表中倒数第k个节点

    429,剑指 Offer-删除链表的节点

    410,剑指 Offer-从尾到头打印链表

    386,链表中的下一个更大节点

    381,合并两个有序链表(易)


    栈相关算法

    438,剑指 Offer-栈的压入、弹出序列

    437,剑指 Offer-包含min函数的栈

    416,剑指 Offer-用两个栈实现队列


    其他经典算法

    426,什么是递归,通过这篇文章,让你彻底搞懂递归

    394,经典的八皇后问题和N皇后问题

    371,背包问题系列之-基础背包问题

    366,约瑟夫环

    362,汉诺塔

    356,青蛙跳台阶相关问题

    389,两个超级大数相加


    位运算相关算法

    357,交换两个数字的值

    361,交替位二进制数

    383,不使用“+”,“-”,“×”,“÷”实现四则运算

    364,位1的个数系列(一)

    385,位1的个数系列(二)

    402,位1的个数系列(三)

    425,剑指 Offer-二进制中1的个数


    数据结构

    348,数据结构-1,数组

    352,数据结构-2,链表

    359,数据结构-3,队列

    363,数据结构-4,栈

    368,数据结构-5,散列表

    373,数据结构-6,树

    378,数据结构-7,堆


    排序

    101,排序-冒泡排序

    102,排序-选择排序

    103,排序-插入排序

    104,排序-快速排序

    105,排序-归并排序

    106,排序-堆排序

    107,排序-桶排序

    108,排序-基数排序

    109,排序-希尔排序

    110,排序-计数排序

    111,排序-位图排序

    112,排序-其他排序


    查找

    201,查找-顺序查找

    202,查找-二分法查找

    203,查找-插值查找

    204,查找-斐波那契查找

    205,查找-分块查找

    206,查找-哈希查找

    207,查找-其他查找


    其他算找

    468,提莫攻击的两种解决方式

    467. 递归和非递归解路径总和问题

    454,字母异位词分组

    452,跳跃游戏

    443,滑动窗口最大值

    436,剑指 Offer-顺时针打印矩阵

    427,剑指 Offer-数值的整数次方

    424,剑指 Offer-剪绳子

    419,剑指 Offer-旋转数组的最小数字

    418,剑指 Offer-斐波那契数列

    415,最佳观光组合

    412,判断子序列

    408,剑指 Offer-替换空格

    405,换酒问题

    406,剑指 Offer-二维数组中的查找

    404,剑指 Offer-数组中重复的数字

    393,括号生成

    392,检查数组对是否可以被 k 整除

    390,长度最小的子数组

    384,整数反转

    382,每日温度的5种解题思路

    379,柱状图中最大的矩形(难)

    380,缺失的第一个正数(中)

    377,调整数组顺序使奇数位于偶数前面

    369,整数替换

    365,消除游戏

    358,移掉K位数字

    355,两数相加 II

    354,字典序排数

    351,最少移动次数使数组元素相等 II

    350,有序矩阵中第K小的元素

    349,组合总和 Ⅳ

    347,猜数字大小 II

    346,查找和最小的K对数字

    345,超级次方

    344,最大整除子集

    343,水壶问题

    342,计算各个位数不同的数字个数

    太多了,就不在一一列举了,具体可以到微信公众号(数据结构和算法)中查看

    cs