题解
小陈小陈一事无成
小萌新...
展开
-
动态规划—不相邻取数
题目描述思路用一个二维数组dp[n][2]dp[n][0]代表不取当前的数dp[n][1]代表取当前的数不取当前的数,前面的数可取可不取 dp[n][0] = Math.max(dp[n-1][0],dp[n-1][1])取当前的数,前面的数必不可以取 dp[n][1] = dp[]n-1[0]+arr[n-1]代码import java.util.*;public class Main { public static void main(String args[]) {原创 2021-11-23 22:06:05 · 827 阅读 · 0 评论 -
连续子数组最大和
描述给定一个长度为 的数组,数组中的数为整数。 请你选择一个非空连续子数组,使该子数组所有数之和尽可能大。求这个最大值。思路要考虑连续子数组的最大和我们可以以末尾为一起节点,用一个数组B存储以他为结尾的最大子数组的和ex:如果 arrB[i-1] 是一个负的 那么 arrB[i] 肯定是他自己同样如果前面是正的 那么 arrB[i] = arrB[i-1]+arr[i]再求出arrB[]的最大值即可import java.util.*;public class Main { pu原创 2021-11-23 21:20:08 · 248 阅读 · 0 评论 -
LeetCode 802. 找到最终的安全状态 2021/8/6 签到题
题目:在有向图中,以某个节点为起始节点,从该点出发,每一步沿着图中的一条有向边行走。如果到达的节点是终点(即它没有连出的有向边),则停止。对于一个起始节点,如果从该节点出发,无论每一步选择沿哪条有向边行走,最后必然在有限步内到达终点,则将该起始节点称作是 安全 的。返回一个由图中所有安全的起始节点组成的数组作为答案。答案数组中的元素应当按 升序 排列。该有向图有 n 个节点,按 0 到 n - 1 编号,其中 n 是 graph 的节点数。图以下述形式给出:graph[i] 是编号 j 节点的一个原创 2021-08-06 00:23:35 · 77 阅读 · 0 评论 -
LeetCode611. 有效三角形的个数 2021/8/4 签到题
题目给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数。示例 1:输入: [2,2,3,4]输出: 3解释: 有效的组合是:2,3,4 (使用第一个 2)2,3,4 (使用第二个 2)2,2,3注意:数组长度不超过1000。 数组里整数的范围为 [0, 1000]。代码class Solution { int sum = 0; public int triangleNumber(int[] nums) { sor原创 2021-08-04 21:40:53 · 149 阅读 · 0 评论 -
LeetCode278. 第一个错误的版本 二分法的常见问题
题目:你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。假设你有 n 个版本 [1, 2, …, n],你想找出导致之后所有版本出错的第一个错误的版本。你可以通过调用 bool isBadVersion(version) 接口来判断版本号 version 是否在单元测试中出错。实现一个函数来查找第一个错误的版本。你应该尽量减少对调用 API 的次数。示例 1:输入:n = 5,原创 2021-08-03 21:25:39 · 78 阅读 · 0 评论 -
简单dfs模板 luogu全排列问题
emmmm我也想了很久才做出来好吧…作为一个疯狂练搜索的小菜鸡题目描述输出自然数 11 到 nn 所有不重复的排列,即 nn 的全排列,要求所产生的任一数字序列中不允许出现重复的数字。输入格式一个整数 nn。输出格式由 1∼n 组成的所有不重复的数字序列,每行一个序列。每个数字保留 55 个场宽。输入输出样例输入 #1复制3输出 #1复制 1 2 3 ...原创 2020-03-18 22:54:38 · 173 阅读 · 0 评论