烟花一树终化尘
烟花一树终化尘
全部文章
题解
mysql(2)
笔试题(11)
归档
标签
去牛客网
登录
/
注册
烟花一树终化尘
弱小和无知不是生存的障碍,傲慢才是!
全部文章
/ 题解
(共34篇)
题解 | #调整数组顺序使奇数位于偶数前面#
奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 可以使用两个队列,一个保存奇数,一个保存偶数,最后把数据重新放回数组 时间复杂度O(n) 空间复杂度O(n) import java.util.*; public class Solution...
Java
数组
队列
2022-05-08
0
481
题解 | #进制转换#
public class Solution { /** * 进制转换 * @param M int整型 给定整数 * @param N int整型 转换到的进制 * @return string字符串 */ // 因为要考虑到 余数 ...
Java
进制转换
2022-04-30
0
455
题解 | #岛屿数量#
深度优先搜索(dfs) 深度优先搜索一般用于树或者图的遍历,其他有分支的(如二维矩阵)也适用。它的原理是从初始点开始,一直沿着同一个分支遍历,直到该分支结束,然后回溯到上一级继续沿着一个分支走到底,如此往复,直到所有的节点都有被访问到。 思路 矩阵中多处聚集着1,要想统计1聚集的堆数而不重复统...
Java
数组
深度优先搜索
广度优先搜索
2022-04-26
0
422
题解 | #树上摘樱桃#
解析 “樱桃”串 :有两个为叶子节点的孩子节点 实现 HashMap<Integer, int[]> map = new HashMap();//利用HashMap记录所有节点及其左右子节点 10 9 1 left 2 1 right 3 2 left 4 2 right 5 3 ri...
Java
字符串
二叉树
2022-04-16
2
460
题解 | 广联达 #盛水最多的容器#
双指针 left = 0,right = len-1 具体过程如下: 取出左右两边的元素,求出maxArea; 判断左右元素的大小,如果左边元素大于右边元素,则右指针左移;如果右边元素大于左边元素,则左指针右移。 每次移动之后再求一次maxArea,与之前的maxArea进行比较,取最大值; 重复...
Java
双指针
2022-04-09
0
366
题解 | #序列化二叉树#
import java.util.*; public class Solution { String Serialize(TreeNode root) { if(root == null) return "#"; // 对所有的空节点也要存储占位符号"#" r...
Java
二叉树
2022-04-09
0
382
题解 | #编辑距离(一)#
如果想把word1变为word2,对于word1的操作我们有3种方式: 删除一个字符 添加一个字符 修改一个字符 1、定义辅助数组 int[][] dp = new int[len1+1][len2+1]; dp[i][j]表示把str1的前i个字符变为str2的前j个字符所需要的最少编辑距离 ...
Java
动态规划
2022-04-09
1
383
题解 | #数组单调和(小和问题)#
问题转化:求单调和(小和)就是统计该元素前有多少小于等于该数的元素之和。问题和归并两个有序数组求小于等于该数的元素之和一样。所以现在的问题变为统计子问题中单调和。 // 当出现nums[i]<=nums[j]时,统计所有前半段区间内比nums[j]小的数 // ...
Java
归并排序
2022-04-07
1
966
题解 | #旋转数组的最小数字#
二分查找 旋转数组的最小数字 ---- 在两个有序数组中找到最小值
Java
二分查找
2022-04-05
0
251
题解 | #寻找峰值#
因为数组边界看成最小值,因此只要不断地往高处走,一定会有波峰,最大值两边一定比它小。那可以考虑二分查找。 step 1:二分查找首先从数组首尾开始,每次取中间值,直到首尾相遇。 step 2:如果中间值的元素大于它右边的元素,说明往右是向下,我们不一定会遇到波峰,但是那就往左收缩区间。 step ...
Java
二分查找
2022-04-05
0
355
首页
上一页
1
2
3
4
下一页
末页