locke.code
locke.code
全部文章
分类
题解(27)
归档
标签
去牛客网
登录
/
注册
locke.code的博客
全部文章
(共26篇)
题解 | #跳台阶#
递归的做法,简单但是有极大的重复计算。可以采用动态规划简化减少重复计算 public class Solution { public int jumpFloor(int target) { if (target <= 2) { return ta...
Java
2021-11-12
0
310
题解 | #用两个栈实现队列#
比较简单,第一个栈用于作入队,另一个队列用于出队,当需要出队时把第一个队列元素全部倒入第二个队列,这样从第二个队列出来的便是第一个进去的元素。 import java.util.Stack; public class Solution { Stack<Integer> stac...
Java
栈
队列
2021-11-12
0
304
题解 | #两数之和#
这题的做的不够聪明,精华题解的答案比较聪明,可以减少遍历的次数,优化空间占用。 import java.util.*; public class Solution { /** * * @param numbers int整型一维数组 * @param ta...
Java
哈希表
2021-11-10
0
283
题解 | #寻找第K大#
利用数组 a 的前k个元素,建立 k 个元素的小根堆,然后遍历剩余的n-k的数,依次跟堆顶元素比较,如果比堆顶元素小,则放弃,如果比堆顶元素大,则加入堆并调整。遍历完成后,返回堆顶元素,即为第K大的数。 import java.util.*; public class Solution { ...
Java
二叉树
数组
堆(优先队列)
2021-11-10
0
302
题解 | #求二叉树的层序遍历#
解题思路:层序遍历。比较有技巧性的地方就在于判断什么时候完成了一层的遍历。 这里的解决方案是每遍历完一层就在末尾放入一个null,当遍历到null 的时候说明这一层就遍历结束了,当队列中只有一个元素的时候就说明整个按层遍历结束了。 import java.util.*; /* * public ...
Java
二叉树
队列
2021-11-09
0
301
题解 | #最小的K个数#
小根堆的解法。一定要注意边界的处理。忽略了几处的边界处理居然可以通过10个用例 1. 初始化堆,自底向上初始化,如果发生了交换,就要该节点自顶向下交换 2. 每次调整选中一个最小的,放入list import java.util.ArrayList; pu...
Java
堆(优先队列)
2021-11-09
0
311
首页
上一页
1
2
3
下一页
末页