牛客338107602号
牛客338107602号
全部文章
分类
题解(16)
归档
标签
去牛客网
登录
/
注册
牛客338107602号的博客
全部文章
(共41篇)
题解 | #三角形最小路径和#
总结:使用动态规划解决,空间复杂度可以优化,从n^2,2n,n。参考如下:https://leetcode.cn/problems/triangle/solution/san-jiao-xing-zui-xiao-lu-jing-he-by-leetcode-solu/ import java.ut...
动态规划
Java
2022-07-08
0
361
题解 | #跳台阶#
总结:可以使用两种方法递归和动态规划,其中动态规划避免了大量重复计算,时间复杂度更优 public class Solution { public int jumpFloor(int target) { //方法1递归(时间复杂度2^n,内部有很多重复计算) // ...
Java
动态规划
2022-07-08
0
284
题解 | #排序#
总结:排序查找问题最常用的几种排序,需要掌握:冒泡排序,快速排序,归并排序,堆排序,以及折中查找。 import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 ...
Java
归并排序
2022-07-07
0
403
题解 | #排序#
总结:本题与快速幂类似,存在两个难点:1.计算过程中数值过大 2.多个相加特别大时耗时长难点1: (a+b)%p = ((a%p)+(b%p))%p利用上述公式可以解决问题1难点2:可以根据b为奇数或偶数,可以将其转为加法,将b=b/2,a=a*2可以减少大数加法 import java.uti...
Java
分治
2022-07-07
0
286
题解 | #快速幂#
总结:快速幂需要解决两个难点:1.大数的幂运算计算量很大,会耗费很长时间。2.计算的中间过程数很大会超出计算机的运算范围。难点1:可以通过将幂运算转换为乘法。如果指数是偶数,可以将底数变为aa,指数变为b/2,这样就降低了计算量但值不变。如果指数是奇数,底数底数变为aa,指数变为b/2,同时结果还要...
Java
分治
2022-07-06
0
333
题解 | #循环汉诺塔#
总结:1.本题可以使用动态规划,分为从A到B,从B到C两个状态。 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(S...
Java
动态规划
2022-07-06
1
1279
题解 | #汉诺塔问题#
总结:1.汉诺塔问题是经典的递归问题,移动n个盘从left借助mid移动到right,可以分解为先将n-1个盘从left借助right移动到mid,再把第n个盘从left直接移动到right,之后再将mid处的n-1个盘从mid借助left移动到right.其中移动n-1个盘的过程又可以划分为类似的...
Java
递归
2022-07-05
4
442
题解 | #ranko的手表#
总结:1.本题计算最大最小值,可以使用枚举法把所有符合规则的字符串保存起来,之后再计算最大最小值。 import java.util.*; public class Main{ public static void main(String[] args){ Scanner s...
Java
枚举
2022-07-05
4
702
题解 | #二分查找-I#
总结:1.二分查找通过改变low,high,计算mid。防止出现大数问题,mid计算推荐mid=low+(high-low)/2 import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,...
二分查找
Java
2022-07-04
0
238
题解 | #kotori和素因子#
总结:1.在计算素数时,除数只需要计算到Math.sqrt(n),不需要遍历到n.而且虽然1不是素因子,但n/1可能是素因子,这种情况应该考虑在内。2.当将每个整数的因子统计好后,可以使用深度优先搜索,逐层寻找素因子,也可以使用数组统计已被访问过的因子。 import java.util.*; pu...
Java
深度优先搜索
2022-07-04
3
686
首页
上一页
1
2
3
4
5
下一页
末页