LeetCode 题型总结
LeetCode 总结
abcnull
INTP男,好结交志趣相投的朋友,微信:a463279708,希望能共同努力进步!你们的支持将是我写下去的不竭动力......
展开
-
leetcode适合做面试的那些题型
文章目录前言二分查找【模板题】【容易】【困难】单链表【模板题】【简单】【困难】栈队列二叉树双指针【模板题】【容易】【中等】递归动态规划数组【模板题】【容易】【中等】字符串排序 前言 面试中哪些题型容易被出呢?一般是leetcode的简单和中度题目,而且题目不要太长,题目意思容易懂,题目最好不要有各种复杂的示例 结合我自己本人的刷题经验,这里我总结了一下我本人认为 leetcode 中非常典型的面试题型(这些题目都是我本人抽取出来分析认为适合做面试的题目),大部分为简单题目 二分查找 二分查找是面试中的高频考原创 2020-09-16 20:19:31 · 110 阅读 · 0 评论 -
leetcode总结-二叉树题型总结
文章目录前言题型关键词算法步骤 前言 在我们做二叉树的基础算法题目的时候一定需要异常熟练的掌握以下知识点,这样写二叉树的题目才能游刃有余 写二叉树前必须非常熟练的掌握如下: 先中后序遍历递归与非递归 二叉树的先中后序遍历的递归与非递归写法,必须非常熟练的写,并且非递归写法有常见的两种写法(一种是严蔚敏版的一种是先存入一个结点到栈中,然后每次循环把该结点在直接孩子结点全部入栈),必须非常熟练的掌握 层次遍历的队列写法 二叉树的层次遍历的写法(用队列实现),必须非常熟练的写,并且要非常熟练的写两种,一种原创 2020-05-12 18:41:16 · 516 阅读 · 0 评论 -
leetcode总结-双指针题型总结
文章目录题型关键词算法步骤 题型 对于线性表类型的题目,已知该线性表具有某种顺序,我们需要对该线性表做某种规定的变换,或者找到该线性表中觉有某种特殊性质的结点,我们就可以使用双指针来解决,其中某种规定的变换或者特殊性质的结点,这个规定和特殊性质决定着双指针的移动距离。 我们常见的双指针,比如快慢指针,头尾设立指针,二分查找等 关键词 有序线性表 算法步骤 1.设立头尾指针 头尾设置指针分别指向...原创 2020-04-30 12:08:15 · 432 阅读 · 0 评论 -
leetcode总结-字符串题型总结
文章目录题型常考点 题型 leetcode 中字符串相关的题目主要涉及字符的移动变换等问题,其中可以用多种不同的算法来解决。由于字符串类型的题目解决思路也是零零碎碎的,所以下面我统计了一下非常常见的一些解题策略 常考点 统计字符串中每种字符的个数,可以用 hash 表来做,常见的如下 int[] arr = new int[26]; 这种做法,让小写字母减去 97 作为数组的下标,出现的次数...原创 2020-04-30 11:40:42 · 784 阅读 · 0 评论 -
leetcode总结-二分查找题型总结
文章目录题型关键词算法步骤 题型 一个基本有序的序列,需要找到其中一个与其他元素不同具有某种特殊特性的元素 时间复杂度 O(logn) 关键词 有序,要寻找的值具有某种特殊性质 算法步骤 先写初始 left 和 right 值 先找到 left 和 right 指向什么值 编写二分循环中的条件语句 编写循环体,循环中编写 if else 条件,条件就是满足要查找的元素特殊的性质 循环结...原创 2020-04-14 15:49:14 · 370 阅读 · 0 评论 -
leetcode总结-一般栈题型总结
文章目录题型常考点 题型 栈的题型比较多种多样,和链表一样比较杂,一般场景是只在一端进行压入或者弹出操作的题型就可以使用栈的数据结构,难点是识别这样的场景 常考点 括号匹配 像括号匹配这种最经典的栈的题型 求栈的最小值 往往用一个辅助栈存储当前数据栈的最小值 栈底出栈 利用一个临时栈,把原来数据栈数据导入到临时栈中,这样临时栈的栈顶就是数据栈的栈底了 ...原创 2020-04-08 18:12:45 · 346 阅读 · 0 评论 -
leetcode总结-单调队列题型总结
文章目录题型关键字解题步骤 单调队列是在单调栈上的拓展,单调队列中元素单调,。注意与优先级队列进行区分。 单调队列的性质: 寻找最大最小值时间复杂度小于 O(n),可以起到优化作用 单调队列初始时没有元素需要添加元素,以后每次变动队列不可能存在空的情况,只有在初始化队列中第一个元素时候为空 单调队列首位变动,中间元素不变动 题型 一个序列只有头尾的数据有变动,需要求该序列的最大值或最小值,可以...原创 2020-04-06 23:12:55 · 1133 阅读 · 0 评论 -
leetcode总结-快慢指针题型总结
文章目录题型关键字解题步骤 使用快慢指针,可以在 O(n) 的时间复杂度 O(1) 的空间复杂度完成答题 题型 对于线性表类型的题目,如果要求中间某个特定位置的结点值,我们就可以用到快慢指针 关键字 要求线性表中某个结点的结点值 解题步骤 若题型符合快慢指针的题型 1.设置快指针有多快 快指针比慢指针快多少?这要看题目的条件,比方说如果题目要求链表最中间的结点值,我们可以设置快指针每次移动速度...原创 2020-04-03 12:30:58 · 535 阅读 · 0 评论 -
leetcode总结-一般链表题型总结
文章目录题型技能点掌握 题型 题型各类各样,比较灵活,不太好归纳为一种题型 技能点掌握 写链表的题需要熟练掌握以下几点 链表结点插入删除操作可以非常灵活熟练的写出来 头插法和尾插法可以非常灵活熟练的写出来 对集合类的常用操作比较熟悉 ...原创 2020-04-02 21:57:20 · 384 阅读 · 0 评论 -
leetcode总结-递归题型总结
文章目录关键字一句话描述算法步骤 分治算法基本都可以用递归实现,分治,递归,栈,深度优先搜索,这些思想和方法往往联系在一起 关键字 过程,返回值 一句话描述 将大问题拆成更小问题,更小问题又可以继续拆解,最后直到递归出口 算法步骤 觉得可以用递归解决的算法题怎么写呢?分为下面几个步骤: 1.发现题目满足分治的思想 首先发现题目要求解 n 很大时候的函数值,可以这个问题拆成更小的问题,在不断的拆...原创 2020-03-31 20:07:41 · 457 阅读 · 0 评论