牛客245120908号
牛客245120908号
全部文章
分类
题解(44)
归档
标签
去牛客网
登录
/
注册
牛客245120908号的博客
TA的专栏
26篇文章
0人订阅
解题思路
26篇文章
317人学习
全部文章
(共9篇)
题解 | #三数之和#
来自专栏
等于0的情况:0+0+0,正+负+0,正+正+负,正+负+负,所以三个相同的数能等于0的情况是只有3个0,所以重复的数有2个就够了,先通过hashmap去重,同一个数出现3次以上只取2次,有效次数和为新数组的长度。然后将新数组排序,正数之后不必计算了,通过三层循环计算和是否为0。 import ja...
Java
数组
哈希表
排序树
2022-06-04
0
304
题解 | #不同路径的数目(一)#
来自专栏
这题最重要的是思路,当走到最后一行的时候,只能向右,只有一条路,当走到最后一列时,只能向下,只有一条路,其他时候可以向下或向右 递归的结束就是m==1或n==1,向下和向右当下只能选其一,所以要么是m-1,要么是n-1,加起来就可以。 动态规划的意思我理解是不走重复的路,那就把计算过的地方存下来...
Java
动态规划
数组
递归
2022-05-05
0
207
题解 | #顺时针旋转矩阵#
来自专栏
仔细分辨题目,是N*N的矩阵,也就是个正方形,顺时针转90度,其实就是从第一列开始,从下到上输出,直到最后一列从上到下输出结束。 新数组第一行第一个数是arr[0][0] = mat[n-1][0],第二个数是arr[0][1] = mat[n-1-1][0]... 新数组第二行第一个数是arr...
Java
数组
数学
2022-05-04
0
245
题解 | #最长回文子串#
来自专栏
回文子串是中心对称的,比如aba,abba,所以区分奇数和偶数,值得注意的是单字符也是中心对称的。 判断奇数回文子串,中间的数只有一个,分别向两边扩散,直到左边到第一个位置,假设中间的数在第i位,i-1位置上的数和i+1位置上的数一致,回文子串的长度就可加2,所以这里要循环,假设i-1为x,i+...
Java
数组
字符串
2022-05-04
0
300
题解 | #旋转数组#
来自专栏
第一次,全数组翻转,12345->54321 第二次,m位之前的数反转,假设m=3,那就是54321->34521 第三次,m位之后的数反转,34521->34512 m取值若超过数组长度,则需取模,如数组为12345,向右移动7位,那移动1位变为51234,移动2位变为45...
Java
数组
2022-05-03
1
171
题解 | 9种排序#排序#
来自专栏
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 将给定数组排序 * @param arr int整型一维数组 待排序的数组 ...
Java
数组
递归
计数
计数排序
归并排序
2022-04-26
1
293
题解 |中等算法 #单调栈#
思路:当前数分别跟左边和右边比一遍,获取第一个小的值下标 1.循环比较赋值,就是时间复杂度有点高 时间复杂度 n^2 空间复杂度 1个二维数组 2个常量 import java.util.*; public class Solution { /** * 代码中的类名、方...
Java
数组
栈
2022-02-25
2
276
题解 | 简单算法#包含min函数的栈#
理解题目:获取栈内最小数字,那取出来排个序再放回去吧 1.用数组接,数组排序后第一个值就是最小的 时间复杂度 2个循环 空间复杂度 消耗了1个数组 import java.util.Stack; import java.util.*; public class Solution { ...
Java
数组
栈
2022-02-25
0
229
题解 | 简单算法#合并两个有序的数组#
思路:数组赋值,扩容,排序 复制数组:1.System.arrayCopy(源数组,起始下标,目标数组,起始下标,赋值个数) 2.A=B;//长度相等可用 3.A=Arrays.copyOfRange(B,B的起始下标,复制长度);//长度相等可用 数组排序:Arrays.sort(A) 数组扩...
Java
数组
2022-02-24
0
207