![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode每日一题
十七十七跳跳糖
这个作者很懒,什么都没留下…
展开
-
面试题29. 顺时针打印矩阵
面试题29. 顺时针打印矩阵1.题目描述2.分析3.代码题目链接1.题目描述2.分析标记出上下左右(t,b,l,r)四个边界,顺时针打印也就是:左-右,上-下,右-左,下-上这里注意 ++i 的使用3.代码class Solution { public int[] spiralOrder(int[][] matrix) { if(matrix == null || matrix.length == 0 || matrix[0].length == 0){原创 2020-06-05 19:39:00 · 71 阅读 · 0 评论 -
面试题 01.07. 旋转矩阵
面试题 01.07. 旋转矩阵题目描述一:先转置,再每行关于中心对称二:把每个点的对应位置找到链接题目描述一:先转置,再每行关于中心对称我们发现,(m,n)的元素旋转过后变成n行,倒数第m列转置:使(m,n) -> (n,m)每行关于中心点对称:(n,m)->n行,倒数第m列class Solution { public void rotate(int[][] ...原创 2020-04-07 10:17:11 · 107 阅读 · 0 评论 -
146. LRU缓存机制
146. LRU缓存机制题目描述思路基于 HashMap 和 双向链表实现代码链接题目描述思路基于 HashMap 和 双向链表实现代码class LRUCache { private int count; private int capacity; private HashMap<Integer,LinkedNode> cache...原创 2020-04-05 14:43:26 · 67 阅读 · 0 评论 -
42. 接雨水【困难】未完
42. 接雨水题目描述~~1.按行接 O(M∗N)O(M*N)O(M∗N)~~ 【不用看】2. 按列接 O(N2)O(N^2)O(N2)3.动态规划 时间:O(n)O(n)O(n) 空间:O(n)O(n)O(n)4.双指针5.栈(联想【括号匹配】)链接题目描述1.按行接 O(M∗N)O(M*N)O(M∗N) 【不用看】从第一行遍历到最后一行,统计雨水的数量对于第 i 行:如果当前高度 ...原创 2020-04-04 19:03:52 · 177 阅读 · 0 评论 -
289. 生命游戏
289. 生命游戏题目描述思路链接题目描述思路对表格中的每一个点,看看周围八个位置有几个存活的细胞用一个新的数组保存结果,最后再复制回去主要是注意对于每个点周围八个位置的处理,可以使用dx 和 dy 两个数组class Solution { public void gameOfLife(int[][] board) { if(board == null ||...原创 2020-04-02 09:49:27 · 116 阅读 · 0 评论 -
1111. 有效括号的嵌套深度
1111. 有效括号的嵌套深度题目描述思路链接题目描述思路class Solution { public int[] maxDepthAfterSplit(String seq) { if(seq == null){ return new int[0]; } int idx = 0; ...原创 2020-04-01 21:05:11 · 99 阅读 · 0 评论 -
20. 有效的括号
20. 有效的括号题目描述栈链接题目描述栈如果是左括号,就把对应的右括号放到栈里。如果是右括号,就首先判断栈是否为空,若不空,看栈顶元素是否是对应的右括号。class Solution { public boolean isValid(String s) { if(s == null){ return true; } ...原创 2020-04-01 17:21:45 · 67 阅读 · 0 评论 -
62.圆圈中最后剩下的数字
62.圆圈中最后剩下的数字题目描述1.数学递归迭代2.数组模拟圆环(超时)3.ArrayList模拟圆环(超时)62.圆圈中最后剩下的数字题目描述1.数学递归class Solution { public int lastRemaining(int n, int m) { if(n == 1){ return 0; }...原创 2020-03-30 10:51:19 · 120 阅读 · 0 评论 -
1162. 地图分析【图的BFS】
1162. 地图分析【图的BFS】题目描述图的BFS链接题目描述图的BFSTree的 BFS : 要把 root 节点先入队,然后再一层一层的无脑遍历就行了。class Solution { public int maxDistance(int[][] grid) { //图的BFS //首先把所有陆地都入队列,然后取出一个,把周围的入队列 ...原创 2020-03-29 21:23:00 · 113 阅读 · 1 评论 -
【中等】820. 单词的压缩编码
820. 单词的压缩编码题目描述Trie前缀树链接题目描述Trie前缀树先把 words 数组中的字符串按长度从大到小排序,然后依次逆序插入 Trie 中class Solution { public int minimumLengthEncoding(String[] words) { if(words == null || words.length == 0...原创 2020-03-28 12:34:54 · 118 阅读 · 0 评论 -
【914】. 卡牌分组
914. 卡牌分组题目描述最大公约数1.思路2.代码3.运行结果:链接题目描述最大公约数1.思路对每一个数算一下出现的个数放在map中。key:数字value:出现的次数分组成功的情况:所有数字的出现次数的最大公约数 >= 22.代码class Solution { public boolean hasGroupsSizeX(int[] deck) { ...原创 2020-03-27 10:23:28 · 109 阅读 · 0 评论 -
【892】. 三维形体的表面积
892. 三维形体的表面积题目描述思路更简洁的写法,使用了位运算链接题目描述思路计算所有的正方体的总个数,总的表面积就是 6 * 总个数每有一个重合面,表面积就会减少 2再去找重合面:同一个格子上存在数量 > 2 的正方体,重合面 = 个数 - 1左右重合上下重合class Solution { public int surfaceArea(int[][]...原创 2020-03-26 10:35:27 · 121 阅读 · 0 评论 -
【简单】999. 车的可用捕获量
999. 车的可用捕获量题目描述思路1.代码2.复杂度分析链接题目描述思路首先找到 车 的位置。然后上下左右 四个方向搜索:如果遇见 象 ,结束搜索如果遇见卒 ,num++ ,结束搜索如果超出边界,结束搜索1.代码class Solution { public int numRookCaptures(char[][] board) { //找到'R...原创 2020-03-26 09:35:12 · 86 阅读 · 0 评论 -
[40]最小的k个数
40.最小的k个数题目描述1.经典 top k 问题(1)快排:最最最高效解决top k 问题---O(N)(2)大根堆(前k小)/小根堆(前k大),Java中有现成的PriorityQueue,实现起来最简单,O(NlogK)(3)二叉搜索树也可以O(NlogK)解决Top K问题2.自己做法(Arrays.sort())链接题目描述1.经典 top k 问题(1)快排:最最最高效解决...原创 2020-03-20 10:29:49 · 75 阅读 · 0 评论 -
[409]最长回文串
409.最长回文串题目描述做法~~1.自己的做法~~2. 位运算+只生成长度为58的数组链接题目描述做法1.自己的做法遍历 s 中的每一个字符,对每一个字符放入到 map 中。最后统计 map 中每个字符出现的次数如果是偶数,结果直接加这个数如果是奇数,结果加这个数减1,并且设置一个 boolean 类型变量记录是否出现了奇数最后如果出现了奇数,那么最后结果要 +1 。c...原创 2020-03-19 22:44:10 · 66 阅读 · 0 评论