自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (2)
  • 收藏
  • 关注

原创 java leetcode之[中等]15. 三数之和

题目的链接在这里:https://leetcode-cn.com/problems/3sum/目录题目大意一、示意图二、解题思路排序加双指针题目大意给你一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?请你找出所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。一、示意图二、解题思路排序加双指针排序加双指针代码如下:class Solution { public List<L

2021-11-30 14:56:28 52

原创 java leetcode之[中等]162. 寻找峰值

题目的链接在这里:https://leetcode-cn.com/problems/find-peak-element/目录题目大意一、示意图二、解题思路正常判断题目大意峰值元素是指其值严格大于左右相邻值的元素。给你一个整数数组 nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。你可以假设 nums[-1] = nums[n] = -∞ 。你必须实现时间复杂度为 O(log n) 的算法来解决此问题。一、示意图二、解题思路正

2021-11-30 11:02:02 313

原创 java leetcode之[中等]153. 寻找旋转排序数组中的最小值

题目的链接在这里:https://leetcode-cn.com/problems/find-minimum-in-rotated-sorted-array/目录题目大意一、示意图二、解题思路正常判断题目大意已知一个长度为 n 的数组,预先按照升序排列,经由 1 到 n 次 旋转 后,得到输入数组。例如,原数组 nums = [0,1,2,4,5,6,7] 在变化后可能得到:若旋转 4 次,则可以得到 [4,5,6,7,0,1,2]若旋转 7 次,则可以得到 [0,1,2,4,5,6,7]注

2021-11-30 09:51:11 156

原创 java leetcode之[动态规划 中等]74. 搜索二维矩阵

题目的链接在这里:https://leetcode-cn.com/problems/search-a-2d-matrix/目录题目大意一、示意图二、解题思路正常判断题目大意编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值。该矩阵具有如下特性:每行中的整数从左到右按升序排列。每行的第一个整数大于前一行的最后一个整数。一、示意图二、解题思路正常判断正常判断代码如下:class Solution { public boolean searchMatrix(

2021-11-29 15:18:33 148

原创 java leetcode之[动态规划 中等]33. 搜索旋转排序数组

题目的链接在这里:https://leetcode-cn.com/problems/search-in-rotated-sorted-array/目录题目大意一、示意图二、解题思路正常判断题目大意整数数组 nums 按升序排列,数组中的值 互不相同 。在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], …, nums[n-1], nums[0], nums[1], …,

2021-11-29 15:11:11 47

原创 java leetcode之[动态规划 中等]99. 恢复二叉搜索树

题目的链接在这里:https://leetcode-cn.com/problems/recover-binary-search-tree/目录题目大意一、示意图二、解题思路暴力版优化版题目大意给你二叉搜索树的根节点 root ,该树中的两个节点被错误地交换。请在不改变其结构的情况下,恢复这棵树。进阶:使用 O(n) 空间复杂度的解法很容易实现。你能想出一个只使用常数空间的解决方案吗?一、示意图二、解题思路中序遍历 暴力版代码如下:/** * Definition for a

2021-11-29 14:29:48 394

原创 java leetcode之[动态规划 中等]784. 字母大小写全排列

题目的链接在这里:https://leetcode-cn.com/problems/letter-case-permutation/目录题目大意一、示意图二、解题思路回溯DFS题目大意给定一个字符串S,通过将字符串S中的每个字母转变大小写,我们可以获得一个新的字符串。返回所有可能得到的字符串集合。一、示意图二、解题思路回溯DFS 回溯DFS代码如下:class Solution { public List<String> letterCasePermu

2021-11-28 19:58:22 176

原创 java leetcode之[动态规划 简单]191. 位1的个数

题目的链接在这里:https://leetcode-cn.com/problems/number-of-1-bits/目录题目大意一、示意图二、解题思路暴力手段位运算题目大意编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为汉明重量)。一、示意图二、解题思路暴力手段和位运算暴力手段代码如下:public class Solution { public int hammingWeight(int n) {

2021-11-28 13:57:44 156

原创 java leetcode之[动态规划 简单]231. 2 的幂

题目的链接在这里:https://leetcode-cn.com/problems/power-of-two/目录题目大意一、示意图二、解题思路递归位运算题目大意给你一个整数 n,请你判断该整数是否是 2 的幂次方。如果是,返回 true ;否则,返回 false 。如果存在一个整数 x 使得 n == 2x ,则认为 n 是 2 的幂次方。一、示意图二、解题思路递归和位运算递归代码如下:class Solution { public boolean isPowerO

2021-11-28 12:31:05 167

原创 java leetcode之[动态规划 中等]120. 三角形最小路径和

题目的链接在这里:https://leetcode-cn.com/problems/triangle/目录题目大意一、示意图二、解题思路动态规划题目大意给定一个三角形 triangle ,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。也就是说,如果正位于当前行的下标 i ,那么下一步可以移动到下一行的下标 i 或 i + 1 。一、示意图二、解题思路动态规划动态

2021-11-27 22:35:41 226

原创 java leetcode之[动态规划 中等]198. 打家劫舍

题目的链接在这里:https://leetcode-cn.com/problems/letter-case-permutation/目录题目大意一、示意图二、解题思路多维BFS题目大意给定一个字符串S,通过将字符串S中的每个字母转变大小写,我们可以获得一个新的字符串。返回所有可能得到的字符串集合。一、示意图二、解题思路多维BFS多维BFS代码如下:class Solution {public int orangesRotting(int[][] grid) {

2021-11-26 14:16:39 299

原创 java leetcode之[动态规划 中等]994. 腐烂的橘子

题目的链接在这里:https://leetcode-cn.com/problems/rotting-oranges/目录题目大意一、示意图二、解题思路多维BFS题目大意在给定的网格中,每个单元格可以有以下三个值之一:值 0 代表空单元格;值 1 代表新鲜橘子;值 2 代表腐烂的橘子。每分钟,任何与腐烂的橘子(在 4 个正方向上)相邻的新鲜橘子都会腐烂。返回直到单元格中没有新鲜橘子为止所必须经过的最小分钟数。如果不可能,返回 -1。一、示意图二、解题思路多维BFS多维BFS

2021-11-24 11:01:04 390

原创 java leetcode之[动态规划 中等]542. 01 矩阵

题目的链接在这里:https://leetcode-cn.com/problems/01-matrix/目录题目大意一、示意图二、解题思路动态规划题目大意给定一个由 0 和 1 组成的矩阵 mat ,请输出一个大小相同的矩阵,其中每一个格子是 mat 中对应位置元素到最近的 0 的距离。两个相邻元素间的距离为 1 。一、示意图二、解题思路动态规划动态规划代码如下:class Solution { public int[][] updateMatrix(int[][]

2021-11-24 09:50:57 205

原创 java leetcode之[动态规划 中等]116. 填充每个节点的下一个右侧节点指针

题目的链接在这里:https://leetcode-cn.com/problems/populating-next-right-pointers-in-each-node/目录题目大意一、示意图二、解题思路bfs题目大意给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下:struct Node {int val;Node *left;Node *right;Node *next;}填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如

2021-11-23 11:37:15 305

原创 java leetcode之[动态规划 简单]617. 合并二叉树

题目的链接在这里:https://leetcode-cn.com/problems/merge-two-binary-trees/目录题目大意一、示意图二、解题思路递归bfs题目大意给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。一、示意图二、解题思路递归和BFS递归代码如下:/**

2021-11-23 11:03:23 54

原创 java leetcode之[动态规划 中等]695. 岛屿的最大面积

题目的链接在这里:https://leetcode-cn.com/problems/max-area-of-island/目录题目大意一、示意图二、解题思路dfsbfs题目大意给你一个大小为 m x n 的二进制矩阵 grid 。岛屿 是由一些相邻的 1 (代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在 水平或者竖直的四个方向上 相邻。你可以假设 grid 的四个边缘都被 0(代表水)包围着。岛屿的面积是岛上值为 1 的单元格的数目。计算并返回 grid 中最大的岛屿面积。如果没

2021-11-22 11:15:54 589

原创 java leetcode之[动态规划 简单]733. 图像渲染

题目的链接在这里:https://leetcode-cn.com/problems/flood-fill/目录题目大意一、示意图二、解题思路BFSDFS题目大意有一幅以二维整数数组表示的图画,每一个整数表示该图画的像素值大小,数值在 0 到 65535 之间。给你一个坐标 (sr, sc) 表示图像渲染开始的像素值(行 ,列)和一个新的颜色值 newColor,让你重新上色这幅图像。为了完成上色工作,从初始坐标开始,记录初始坐标的上下左右四个方向上像素值与初始坐标相同的相连像素点,接着再记录这

2021-11-22 10:42:29 64

原创 java leetcode之[动态规划 中等]567. 字符串的排列

题目的链接在这里:https://leetcode-cn.com/problems/permutation-in-string/目录题目大意一、示意图二、解题思路滑动窗口题目大意给你两个字符串 s1 和 s2 ,写一个函数来判断 s2 是否包含 s1 的排列。如果是,返回 true ;否则,返回 false 。换句话说,s1 的排列之一是 s2 的 子串 。一、示意图二、解题思路滑动窗口滑动窗口代码如下:class Solution { public boolean ch

2021-11-21 14:59:12 321

原创 java leetcode之[动态规划 中等]3. 无重复字符的最长子串

题目的链接在这里:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/目录题目大意一、示意图二、解题思路队列题目大意给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。一、示意图二、解题思路队列队列代码如下:class Solution { public int lengthOfLongestSubstring(String s) {

2021-11-21 12:59:33 214

原创 java leetcode之[动态规划 简单]876. 链表的中间结点

题目的链接在这里:https://leetcode-cn.com/problems/middle-of-the-linked-list/目录题目大意一、示意图二、解题思路双指针题目大意给定一个头结点为 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点一、示意图二、解题思路双指针 双指针代码如下:/** * Definition for singly-linked list. * public class ListNode { *

2021-11-20 13:24:30 429

原创 java leetcode之[动态规划 简单]557. 反转字符串中的单词 III

题目的链接在这里:https://leetcode-cn.com/problems/reverse-words-in-a-string-iii/目录题目大意一、示意图二、解题思路双指针题目大意给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。一、示意图二、解题思路双指针 双指针代码如下:class Solution { public String reverseWords(String s) { //还是反转 那还是直

2021-11-19 11:18:30 179

原创 java leetcode之[动态规划 简单]344. 反转字符串

题目的链接在这里:https://leetcode-cn.com/problems/reverse-string/目录题目大意一、示意图二、解题思路双指针题目大意编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。一、示意图二、解题思路双指针 双指针代码如下:class Solution { public void reverseStrin

2021-11-19 10:49:36 311

原创 java leetcode之[动态规划 简单]283. 移动零

题目的链接在这里:https://leetcode-cn.com/problems/move-zeroes/目录题目大意一、示意图二、解题思路双指针题目大意给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。一、示意图二、解题思路双指针 双指针代码如下:class Solution { public void rotate(int[] nums, int k) { //进行三次反转 i

2021-11-18 10:04:13 183

原创 Python numpy Import Error Something is wrong with the numpy installation.(亲测有效)

解决方法如下:

2021-11-17 16:37:02 780

原创 java leetcode之[动态规划 中等]189. 轮转数组

题目的链接在这里:https://leetcode-cn.com/problems/rotate-array/目录题目大意一、示意图二、解题思路双指针(会超时)三次反转题目大意给你一个数组,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。一、示意图二、解题思路双指针 三次反转双指针(会超时)代码如下:class Solution { public void rotate(int[] nums, int k) { //用栈肯定是可以的 但

2021-11-17 10:07:07 415 1

原创 java leetcode之[动态规划 简单]977. 有序数组的平方

题目的链接在这里:https://leetcode-cn.com/problems/squares-of-a-sorted-array/目录题目大意一、示意图二、解题思路双指针题目大意给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。一、示意图二、解题思路双指针双指针代码如下:class Solution { final static int n=10000; public int[] sortedSq

2021-11-17 09:24:29 76

原创 java leetcode之[动态规划 简单]35. 搜索插入位置

题目的链接在这里:https://leetcode-cn.com/problems/search-insert-position/目录题目大意一、示意图二、解题思路二分题目大意给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。一、示意图二、解题思路二分二分代码如下:class Solution { public int searchInsert(

2021-11-16 19:17:48 314

原创 java leetcode之[动态规划 简单]278. 第一个错误的版本

题目的链接在这里:https://leetcode-cn.com/problems/first-bad-version/目录题目大意一、示意图二、解题思路二分题目大意你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。假设你有 n 个版本 [1, 2, …, n],你想找出导致之后所有版本出错的第一个错误的版本。你可以通过调用 bool isBadVersion(version

2021-11-16 16:29:42 52

原创 java leetcode之[动态规划 简单]704. 二分查找

题目的链接在这里:https://leetcode-cn.com/problems/binary-search/目录题目大意一、示意图二、解题思路二分题目大意给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。一、示意图二、解题思路二分二分代码如下:class Solution { public int search(int[] nums, int

2021-11-16 16:04:59 320

原创 java leetcode之[动态规划 中等] 1014. 观光组合

题目的链接在这里:https://leetcode-cn.com/problems/best-sightseeing-pair/submissions/目录题目大意一、示意图二、解题思路动态规划题目大意给你一个正整数数组 values,其中 values[i] 表示第 i 个观光景点的评分,并且两个景点 i 和 j 之间的 距离 为 j - i。一对景点(i < j)组成的观光组合的得分为 values[i] + values[j] + i - j ,也就是景点的评分之和 减去 它们两者之

2021-11-12 11:30:00 380

原创 java leetcode之[动态规划 简单]53. 最大子序和

题目的链接在这里:https://leetcode-cn.com/problems/maximum-subarray/目录题目大意一、示意图二、解题思路动态规划题目大意给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。一、示意图二、解题思路动态规划动态规划代码如下:class Solution { public int maxSubArray(int[] nums) { //最大子序和 用动态规划算 给

2021-11-12 10:56:53 61

原创 java leetcode之[动态规划 中等]983. 最低票价

题目的链接在这里:https://leetcode-cn.com/problems/minimum-cost-for-tickets/目录题目大意一、示意图二、解题思路正常的动态规划题目大意在一个火车旅行很受欢迎的国度,你提前一年计划了一些火车旅行。在接下来的一年里,你要旅行的日子将以一个名为 days 的数组给出。每一项是一个从 1 到 365 的整数。火车票有三种不同的销售方式:一张为期一天的通行证售价为 costs[0] 美元;一张为期七天的通行证售价为 costs[1] 美元;一张

2021-11-12 10:12:21 112

原创 java 牛客网之[动态规划 中等]NC21 [ZJOI2010]COUNT 数字计数

题目的链接在这里:https://www.nowcoder.com/practice/01c35f01fb7343fe9fc16139562f78ed目录题目大意一、示意图二、解题思路数位dp 错解题目大意给定两个正整数a和b,求在[a,b]中的所有整数中,每个数码(digit)各出现了多少次。一、示意图二、解题思路数位dp(但是回答错误)数位dp 错解代码如下:import java.util.*;public class Main { final static

2021-11-11 10:59:35 406

转载 git 中输入git log 退不出去了

其实这个问题很简单只需要在英文状态下输入q即可简单实用

2021-11-10 14:53:51 420

原创 java 牛客网之[动态规划 中等]NC20 串

题目的链接在这里:https://www.nowcoder.com/practice/01c35f01fb7343fe9fc16139562f78ed目录题目大意一、示意图二、解题思路数位dp题目大意长度不超过nn,且包含子序列“us”的、只由小写字母构成的字符串有多少个? 答案对10^9+710 9 +7取模。所谓子序列,指一个字符串删除部分字符(也可以不删)得到的字符串。例如,"unoacscc"包含子序列"us",但"scscucu"则不包含子序列"us"一、示意图二、解题

2021-11-10 09:57:40 463

原创 java 牛客网之[动态规划 简单]NC18 数位染色

题目的链接在这里:https://www.nowcoder.com/practice/adf828f399de4932955734a4eac12757目录题目大意一、示意图二、解题思路数位dp题目大意小红拿到了一个正整数 X 。她可以将其中一些数位染成红色。然后她想让所有染红的数位数字之和等于没染色的数位数字之和。她不知道能不能达成目标。你能告诉她吗?一、示意图二、解题思路数位dp数位dp代码如下:import java.util.*;public class Mai

2021-11-09 10:31:33 1596

原创 java 牛客网之[动态规划 中等]NC15 小红的树

题目的链接在这里:https://www.nowcoder.com/practice/66ab364d3fba487eb39bd3460fd484c0目录题目大意一、示意图二、解题思路树形dp题目大意小红拿到了一棵有根树。根节点为1号节点。所谓树,指没有回路的无向连通图。现在小红想给一部分点染成红色。之后她有 次询问,每次询问某点的子树红色节点的个数。一、示意图二、解题思路树形dp树形dp代码如下:import java.util.*;public class Mai

2021-11-08 09:57:52 3602

原创 java 牛客网之[动态规划 简单]NC13 [CQOI2007]涂色PAINT

题目的链接在这里:https://www.nowcoder.com/practice/512619bee5874e85bd2812a0c9066125目录题目大意一、示意图二、解题思路区间dp题目大意假设你有一条长度为5的木版,初始时没有涂过任何颜色。你希望把它的5个单位长度分别涂上红、绿、蓝、绿、红色,用一个长度为5的字符串表示这个目标:RGBGR。 每次你可以把一段连续的木版涂成一个给定的颜色,后涂的颜色覆盖先涂的颜色。例如第一次把木版涂成RRRRR,第二次涂成RGGGR,第三次涂成RGBG

2021-11-05 09:26:21 180

原创 java 牛客网之[动态规划 中等]NC12 【模板】完全背包

题目的链接在这里:https://www.nowcoder.com/practice/237ae40ea1e84d8980c1d5666d1c53bc目录题目大意一、示意图二、解题思路完全背包问题题目大意你有一个背包,最多能容纳的体积是V。现在有n种物品,每种物品有任意多个,第i种物品的体积为v_ivi​,价值为w_iwi​。(1)求这个背包至多能装多大价值的物品?(2)若背包恰好装满,求至多能装多大价值的物品?一、示意图二、解题思路完全背包问题完全背包问题代码

2021-11-04 14:00:28 192

原创 java 牛客网之[动态规划 简单]NC11 【模板】01背包

题目的链接在这里:https://www.nowcoder.com/practice/fd55637d3f24484e96dad9e992d3f62e目录题目大意一、示意图二、解题思路01背包问题题目大意你有一个背包,最多能容纳的体积是V。现在有n个物品,第i个物品的体积为v_ivi​,价值为w_iwi​。(1)求这个背包至多能装多大价值的物品?(2)若背包恰好装满,求至多能装多大价值的物品?一、示意图二、解题思路01背包问题01背包问题代码如下:import

2021-11-04 10:54:14 362

mysql必知必会.xmind

mysql必知必会的资源,适合mysql学习

2021-03-15

shiro.xmind

shiro学习思维导图

2021-01-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除