LaN666
LaN666
全部文章
题解
归档
标签
去牛客网
登录
/
注册
LaN666的博客
梅花香自苦寒来~
全部文章
/ 题解
(共102篇)
设计LRU缓存结构
import java.util.*; public class Solution { /** * lru design &nb...
LRU缓存结构
2020-11-30
12
1232
JAVA版 《平衡二叉树》
利用求二叉树的深度进而判断是不是平衡二叉树(任意一个结点的子树的高度差都小于等于1) import java.util.*; public class Solution { boolean isBalanced = true; public boolean IsBalanced_So...
二叉树
2020-11-26
0
526
Java版 《判断二叉树是否对称》
代码没什么好解释的,一看就懂的代码~ 递归 import java.util.*; public class Solution { public boolean isSymmetric (TreeNode root) { if(root == null) ...
递归
迭代
2020-11-25
30
1124
NC41 最长无重复子数组
来自专栏
方法一:滑动窗口法 算法思路 我们可以利用双指针模拟一个滑动窗口。初始化该窗口为(left, right]。所以left从-1开始。窗口不断往右扩大。因为我们要的是无重复子数组,因此,遇到有重复的数字,在窗口左侧进行缩小。在每次滑动时,对窗口的大小进行比较,保留最大的长度。 代码实现 impo...
双指针
哈希表
2020-11-25
37
4365
Java版 《容器盛水问题》
思路分析:因为要该容器是一个高低不平的容器,所以我们直接找出容器的左右边界,很明显,为了不让水溢出来,容器的边界肯定取那个更低的。然后使用双指针,分别从两边往中间扫描,如果此时左边arr[left]的高度小于右边的高度时,左指针向右扫描+1,如果此时当前位置的高度小于容器的边界高度,那么意味着此位置...
双指针
2020-11-25
8
956
JAVA版 《大数乘法》
思路: 先将两个字符串反转,然后对齐字符串的每一位,怎么个对齐法呢?就是反转后的字符串,短的字符串在最后面补0,补到和长字符串长度一样为止。然后再将字符串的每一位相加,相加时注意每一次都要加上进位数,进位数再前一位可以算出来,当每一位都加完的时候,此时需要一个判断,此时的进位数是否为0,如果不为0....
大数乘法
字符串
字符串
2020-11-25
13
1931
删除有序链表中重复项(重复项保留)
简单的一次遍历 import java.util.*; public class Solution { public ListNode deleteDuplicates (ListNode head) { if(head == null) return...
链表
2020-11-24
1
0
链表中倒数第k个结点的值
跟删除链表中倒数第n个结点做法一样,用快慢指针,只是本题需要加多一个判断,当快指针先走完的时候,证明倒数第k个结点已经超出了链表的头结点,此时直接返回null public class Solution { public ListNode FindKthToTail(ListNode hea...
双指针
2020-11-24
0
655
删除链表的倒数第n个节点
使用快慢指针快指针先走n步,然后再和慢指针一起走,此时当快指针走完的时候,慢指针则刚好走到倒数的第n个结点。 public ListNode removeNthFromEnd (ListNode head, int n) { // write code here ...
双指针
2020-11-24
0
528
斐波那契数列
递归 public int Fibonacci(int n) { if(n == 0 || n == 1) return n; return Fibonacci(n-1) + Fibonacci(n-2); } 上面的纯递归的时间复杂...
递归
dp
2020-11-24
1
538
首页
上一页
2
3
4
5
6
7
8
9
10
11
下一页
末页