![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法刷题
Cocowwy.
Good good study Day day up
展开
-
LeetCode刷题之剑指 Offer 55 - II. 平衡二叉树
首先先上题目内容: 由图可知,既然要判断是否是平衡二叉树,那么就要判断当前节点的左子树和右子树是否的深度之差是否大于1。 首先先上另外一道简单版的题: 该题是求树的深度,解题的方法就是,通过递归自顶向下,终止条件是当前节点为空,如果不为空,则深度加1,当到底部的时候则返回0 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * Tr原创 2020-12-15 15:02:06 · 109 阅读 · 0 评论 -
LeetCode刷题之T146LRU缓存机制
这次讲解的题目是LeetCode刷题之T146LRU缓存机制: 首先我们先看下题目: 这道题的思路是使用LinkedHashMap进行K-V键值对,首先我们知道LinkedHashMap是一个有序的HashMap,利用其有序性,将最近操作的key取出,放到LinkedHashMap的最后边。 接下来上代码: class LRUCache { int max; HashMap<Integer,Integer> cache=new LinkedHashMap(); p原创 2020-12-11 16:26:25 · 142 阅读 · 0 评论 -
LeetCode刷题之T46全排列(中等)
大家好,这次我们讲解的题目是LeetCode刷题之T46全排列(中等),话不多说,上题: 解题思路: 这道题的要用到回溯算法,而解决每一个回溯问题,实际上就是一个决策树的问题,不明白的话,我举个例子: 我们可以先看图: 由图我们看出:[1,2,3]使我们的一组解,跟着我来分析: 1:首先选择的1。 2:接着可以选1,2,3,我们先选1,但是1选择过了(nums不重复的数组),所以我们只能够往回...原创 2020-04-26 10:40:27 · 224 阅读 · 0 评论 -
LeetCode刷题之T15三数之和(中等)
这次我们讲解的题目是LeeCode 的中等题目,三数之和。话不多说,上题目: 相信很多人的第一个想法就是,暴力求解,三层for循环,我也是,可是却是一个大大的错误!因为这道题有个很重要的点,那就是去重! 解题思路: 1:先将数组进行排序! 这样的好处是再接下来去重的时候能更加直观方便! 2:三个指针,第一个指针对数组进行遍历,从index=0的位置一直遍历到index=nums.length-3...原创 2020-04-24 09:14:44 · 193 阅读 · 0 评论 -
LeetCode刷题之T19删除链表的倒数第N个节点(中等)
这次讲解的题目是LeetCode的T19 删除链表的倒数第N个节点(中等),话不多说,接下来上题目: 链表节点的定义: /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x...原创 2020-04-22 19:00:46 · 184 阅读 · 0 评论 -
LeetCode刷题之T200岛屿数量 (中等)
这次讲解的题目是LeetCode上的T200岛屿数量,话不多说,题目如下: 首先看到题目的我是一脸茫然TAT,不知道从何下手! 细思之后: 肯定要做额是我们得遍历数组,对吧! 关键在于怎么判断是否是一个岛 我们要判断是否相连,比如当前坐标点为‘1’,与它相连的地方如果是‘1’的话就说明该两点为一个岛,通过对这个为’1’的点我们也要进行判断其周围是否为‘1’!但是如果判断完后,其他的点也会判断到已...原创 2020-04-21 13:38:15 · 163 阅读 · 0 评论 -
LeetCode刷题之T445两数相加 II(中等)
这次讲解的题目是LeetCode上的第T445两数相加 II(中等),其T2两数相加(中等)可参考:https://blog.csdn.net/Pzzzz_wwy/article/details/105519719 接下来上题: 节点的定义: 话不多说上思路: 首先我们得知道我们如果通过遍历,那么最先得到的就是较高位的值,然后再依次得到较低的值,然后按位置再相加后将值写到一个新的链表,接下来讲解...原创 2020-04-20 15:14:48 · 227 阅读 · 0 评论 -
LeetCode刷题之T2两数相加(中等)
这次讲解的题目是一个中等题,和链表的数据结构有关。接下来上题目: 链表的结构: /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ 思路如下: ...原创 2020-04-18 23:01:24 · 171 阅读 · 0 评论 -
LeetCode刷题之T42接雨水 (困难)
这次讲解的题目是LeetCode上的一道挺有意思的题目,接下来放上题目: T42.接雨水(困难) 首先我们得知道的是,最左边和最右边的柱子上面是无法接水的, 其次,如果该索引位置能接水,就说明这个位置的两侧的必定会存在有大于他的木块的! 解题思路: 假设水不会因为左边是否存在柱子,只在乎右边的柱子是否高于当前索引位置,如果高于,那么就假定当前位置的水位能达到有边柱子一样的高度,由此可以得到下图:...原创 2020-04-14 10:09:18 · 251 阅读 · 0 评论