![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
动态规划
某个不会写代码的小傻逼。
这个作者很懒,什么都没留下…
展开
-
Believing Process Hot279. 完全平方数
题干:给你一个整数 n ,返回 和为 n 的完全平方数的最少数量 。完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、4、9 和 16 都是完全平方数,而 3 和 11 不是。示例1:输入:n = 12输出:3解释:12 = 4 + 4 + 4class Solution { public int numSquares(int n) { int[] dp = new int[n+1]; ...原创 2022-02-19 15:45:35 · 263 阅读 · 0 评论 -
Believing Process 力扣Hot198.打家劫舍
题干;你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。给定一个代表每个房屋存放金额的非负整数数组,计算你 不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额示例;输入:[1,2,3,1]输出:4解释:偷窃 1 号房屋 (金额 = 1) ,然后偷窃 3 号房屋 (金额 = 3)。 偷窃到的最高金额 = 1 + 3 = 4 。publ...原创 2022-01-18 19:25:49 · 100 阅读 · 0 评论 -
Believing Process Hot96.不同的二叉搜索树
题干:给你一个整数n,求恰由n个节点组成且节点值从1到n互不相同的二叉搜索树有多少种?返回满足题意的二叉搜索树的种数。public class 不同的二叉搜索树 { public static void main(String[] args) { int n =3; System.out.println(numTrees(n)); } public static int numTrees(int n) { ...原创 2021-12-29 14:44:15 · 80 阅读 · 0 评论 -
Believing Process Hot.62. 不同路径
题干:一个机器人位于一个 m x n网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?输入:m = 3, n = 3输出:6public static void main(String[] args) { int m=3,n=3; System.out.println(uniquePaths(m,n)); ..原创 2021-12-22 22:17:37 · 183 阅读 · 0 评论 -
Believing Process 最长回文子串
给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = "babad"输出:"bab"解释:"aba" 同样是符合题意的答案。public static String longestPalindrome2(String s) { int len = s.length(); if (len < 2) { return s; } int maxLen = 1; in.原创 2021-12-01 17:28:42 · 47 阅读 · 0 评论 -
Believing Process 剑指 Offer 49. 丑数
题干:我们把只包含质因子 2、3 和 5 的数称作丑数(Ugly Number)。求按从小到大的顺序的第 n 个丑数。示例:输入: n = 10输出: 12解释: 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。public int nthUglyNumber(int n) { int[] res = new int[n]; int a = 0, b = 0, c = 0; res[0] = 1;.原创 2021-11-13 15:54:46 · 237 阅读 · 0 评论 -
Believing Process 剑指 Offer 47. 礼物的最大价值
题干:在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值,请计算你最多能拿到多少价值的礼物?示例:输入: [ [1,3,1], [1,5,1], [4,2,1]]输出: 12解释: 路径 1→3→5→2→1 可以拿到最多价值的礼物class Solution { public int maxValue...原创 2021-11-12 15:34:51 · 65 阅读 · 0 评论 -
Believing Process 剑指 Offer 42. 连续子数组的最大和
题干:输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。示例:输入: nums = [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释:连续子数组[4,-1,2,1] 的和最大,为6。public int maxSubArray(int[] nums) { if(nums.length==0) return 0; int[] dp = new int[nums.len...原创 2021-11-10 20:38:54 · 74 阅读 · 0 评论