烟花一树终化尘
烟花一树终化尘
全部文章
题解
mysql(2)
笔试题(11)
归档
标签
去牛客网
登录
/
注册
烟花一树终化尘
弱小和无知不是生存的障碍,傲慢才是!
全部文章
/ 题解
(共34篇)
题解 | #最小花费爬楼梯#
动态规划 创建辅助数组 int[] dp = new int[len+1]; //爬到第i层所需要的最小费用是dp[i] 找到对应关系 // 一旦你支付此费用,即可选择向上爬一个或者两个台阶。 dp[i] = Math.min(dp[i-1]+cost[i-1],dp[i-2]+cost[...
Java
动态规划
2022-04-03
0
307
题解 | #马戏团#
动态规划+二分查找 https://leetcode-cn.com/problems/circus-tower-lcci/ 题目要求在2个维度上(即身高 + 体重)同时保持递增。 那么我们可以先将其中一个维度排好序,以保证在一个维度上保持递增(此时并非严格递增); 之后就可以专注于处理另一个维度。(...
Java
动态规划
二分查找
2022-04-02
1
539
题解 | #表达式求值#
step 1:使用栈辅助处理优先级,默认符号为加号。 step 2:遍历字符串,遇到数字,则将连续的数字字符部分转化为int型数字。 step 3:遇到左括号,则将括号后的部分送入递归,处理子问题;遇到右括号代表已经到了这个子问题的结尾,结束继续遍历字符串,将子问题的加法部分相加为一个数字,返回。 ...
Java
栈
2022-03-31
0
283
题解 | #求二叉树的层序遍历#
借用辅助队列保存 Deque<TreeNode> queue = new ArrayDeque<>(); queue.offer(root); while(!queue.isEmpty()){ int size = queue.s...
Java
二叉树
2022-03-31
0
312
题解 | #用两个栈实现队列#
栈是先进后出的,队列是先进先出的 可以使用两个栈stackPop和stackPush,往队列中添加元素的时候直接把要添加的值压入到stackPush 栈中。 往队列中删除元素的时候如果stackPop中有元素我们就接删除 如果没有元素,我们需要把stackPush中的元素全部出栈放到stackPo...
Java
队列
栈
2022-03-30
0
250
题解 | #兑换零钱(一)#
动态规划 1、定义数组元素的含义 构造金额 i 需要的最少钞票数 dp[i] 2、找出数组元素间的关系式(子问题) 如何在已知钞票的情况下构造出金额 X 需要的最少钞票组合
Java
动态规划
2022-03-30
0
251
题解 | #矩阵最长递增路径#
回溯法 原理 当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满足回溯条件的某个状态的点称为“回溯点” 方法模板 private void backtrack("原始参数") { //终止条件(递归必须要有终止条件) if ("...
Java
回溯
2022-03-30
1
483
题解 | #重建二叉树#
法一:三指针 preStart,他表示的是前序遍历开始的位置; inStart,他表示的是中序遍历开始的位置; inEnd,他表示的是中序遍历结束的位置。 找到了前序遍历的结点在中序遍历的位置,我们就可以把中序遍历数组分解为两部分了 [0,index -1]就是根节点左子树的所有节点, [inde...
Java
二叉树
2022-03-30
0
281
题解 | #三数之和#
先排序; 固定一个数字,然后从左右两边开始查找和为该数的负数即可。 剪枝: 因为是排序的,如果第一个数字大于0,那么后面的也都大于0,他们三个数字的和不可能等于0 过滤掉重复的 if (i > 0 && num[i] == num[i - 1]) con...
Java
双指针
2022-03-30
0
346
题解 | #链表中的节点每k个一组翻转#
递归 递归有2个条件, 一个是终止条件,一个是调用自己 假如使用递归从第K+1个节点往后的节点全部交换了,这个时候我们可以把链表分为两部分,前K个节点和后面交换完成的链表,就是(k)->(k+1),然后再把前k个节点交换即可。 非递归
Java
链表
2022-03-30
0
330
首页
上一页
1
2
3
4
下一页
末页