![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法笔试刷题分类总结
文章平均质量分 97
把常见的算法题分类,对每个类的知识点进行整理、分析、总结一套阶梯方法
Suarge
这个作者很懒,什么都没留下…
展开
-
算法学习之双指针、滑动窗口、单调队列、单调栈
文章目录双指针滑动窗口单调队列单调栈 双指针 滑动窗口 单调队列 单调栈原创 2020-09-01 22:17:57 · 285 阅读 · 0 评论 -
算法学习之排序、LRU算法
文章目录排序LRU 排序 1)冒泡排序 public void bubbleSort(int[] arr){ for (int i = 0; i < arr.length; i++) { //外层循环,遍历次数 for (int j = 0; j < arr.length - i - 1; j++) { //内层循环,升序(如果前一个值比后一个值大,则交换) //内层循环一次,获取一个最大值原创 2020-08-30 17:39:03 · 379 阅读 · 0 评论 -
算法学习之搜索系列(回溯、DFS、BFS)小结
文章目录BFS111. 二叉树的最小深度752. 打开转盘锁DFS695. 岛屿的最大面积547. 朋友圈Backtracking BFS BFS 的核心思想就是把一些问题抽象成图,从一个点开始,向四周开始扩散。一般来说, BFS 算法都是用「队列」这种数据结构,每次将一个节点周围的所有节点加入队列。 BFS 相对 DFS 的最主要的区别是:BFS 找到的路径一定是最短的,但代价就是空间复杂度比 DFS 大很多。 一般来说在找最短路径的时候使用 BFS,其他就用DFS。 在程序实现 BFS 时需要考虑以原创 2020-08-29 17:44:37 · 394 阅读 · 0 评论 -
算法学习之二分查找、位运算、数学系列小结
文章目录二分查找 二分查找原创 2020-08-27 10:15:52 · 289 阅读 · 0 评论 -
算法学习之字符串系列小结
文章目录字符串58. 最后一个单词的长度387. 字符串中的第一个唯一字符242. 有效的字母异位词205. 同构字符串 字符串 58. 最后一个单词的长度 给定一个仅包含大小写字母和空格 ' ' 的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。 如果不存在最后一个单词,请返回 0 。 说明:一个单词是指仅由字母组成、不包含任何空格字符的 最大子字符串。 示例: 输入: "Hello World" 输出: 5 解题思路: 从右向左遍历,从第一个不是空原创 2020-08-25 17:04:49 · 206 阅读 · 0 评论 -
算法学习之二叉树系列小结
文章目录二叉树递归104. 二叉树的最大深度层次遍历102. 二叉树的层序遍历前中后序遍历BST98. 验证二叉搜索树Tire 二叉树 递归 对于递归类型的题,首先是三点: 这个递归函数的功能是什么,怎样调用这个函数,即设计好递归函数的返回值和参数列表 什么时候应该结束这个递归,它的边界条件(出口)是什么 (边界条件) 在非边界情况时,怎样从第n层转变成第n+1层 (递推公式) 104. 二叉树的最大深度 给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明:原创 2020-08-23 14:28:56 · 416 阅读 · 0 评论 -
算法学习之链表系列小结
文章目录链表19题 删除链表的倒数第N个数21题 合并有序链表141题 链表是否成环142题 找到链表开始入环的第一个节点2题 两数相加2题 相交链表206题 反转链表 链表 19题 删除链表的倒数第N个数 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 解题思路: 因为要返回删除后的链表,这种问题一般设置哨兵节原创 2020-08-21 17:48:18 · 142 阅读 · 0 评论 -
算法学习之数组系列小结
数组 文章目录数组350题 两个数组的交集14题 最长公共前缀189题 旋转数组27题 原地删除26题 删除排序数组中的重复项66题 加一1题 两数之和15题 三数之和16题 最接近的三数之和6题 Z字打印54题 螺旋打印小结 350题 两个数组的交集 给定两个数组,编写一个函数来计算它们的交集。给定两个数组,编写一个函数来计算它们的交集。 示例1: 输入:nums1 = [1,2,2,1], nums2 = [2,2] 输出:[2,2] 示例2: 输入:nums1 = [4,9,5], nums2 =原创 2020-08-20 16:32:36 · 231 阅读 · 0 评论