自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

octopus

理性与逻辑构筑更好的自己

原创 58 最后一个单词的长度

1. 问题描述: 给定一个仅包含大小写字母和空格' '的字符串 s,返回其最后一个单词的长度。如果字符串从左向右滚动显示,那么最后一个单词就是最后出现的单词。 如果不存在最后一个单词,请返回 0。 说明:一个单词是指仅由字母组成、不包含任何空格字符的 最大子字符串。 示...

2020-04-03 23:38:58

阅读数 9

评论数 0

原创 49 字母异位词分组(map)

1. 问题描述: 给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。 示例: 输入: ["eat", "tea", "tan", "ate", "nat",...

2020-04-03 23:22:22

阅读数 8

评论数 0

原创 76 最小覆盖子串(滑动窗口)

1. 问题描述: 给你一个字符串 S、一个字符串 T,请在字符串 S 里面找出:包含 T 所有字母的最小子串。 示例: 输入: S = "ADOBECODEBANC", T = "ABC" 输出: "BANC" 说明: 如果 S ...

2020-04-03 22:41:22

阅读数 14

评论数 0

原创 223 矩形面积

1. 问题描述: 在二维平面上计算出两个由直线构成的矩形重叠后形成的总面积。 每个矩形由其左下顶点和右上顶点坐标表示,如图所示。 示例: 输入: -3, 0, 3, 4, 0, -1, 9, 2 输出: 45 说明:假设矩形面积不会超出int的范围。 2. 思路分析: ① 根据题...

2020-04-02 21:50:16

阅读数 37

评论数 0

原创 67 二进制求和(模拟)

1. 问题描述: 给定两个二进制字符串,返回他们的和(用二进制表示)。 输入为非空字符串且只包含数字1和0。 示例1: 输入: a = "11", b = "1" 输出: "100" 示例2: 输入: a = "101...

2020-04-02 18:56:11

阅读数 17

评论数 0

原创 203 移除链表元素(改变指针指向)

1. 问题描述: 删除链表中等于给定值val的所有节点。 示例: 输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4->5 来源:力扣(LeetCode) 链接:https://le...

2020-04-01 22:43:37

阅读数 16

评论数 0

原创 221 最大正方形(暴力、动态规划)

1. 问题描述: 在一个由 0 和 1 组成的二维矩阵内,找到只包含 1 的最大正方形,并返回其面积。 示例: 输入: 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 输出: 4 来源:力扣(LeetCode) 链接:https://leetcode-c...

2020-04-01 22:15:29

阅读数 50

评论数 0

原创 64 最小路径和(递归、动态规划)

1. 问题描述: 给定一个包含非负整数的 mxn网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。 说明:每次只能向下或者向右移动一步。 示例: 输入: [ [1,3,1], [1,5,1], [4,2,1] ] 输出: 7 解释: 因为路径 1→3→1→1→1 的总...

2020-03-31 23:33:41

阅读数 22

评论数 0

原创 字符串与基本数据类型的转换

1. 字符串转换为数字 java.lang中的Integer类调用其类方法public static int paeseInt(String s)可以将由“数字”字符组成的字符串,比如“876”转换为int数据类型,例如: int x; String s = "876";...

2020-03-31 22:34:05

阅读数 908

评论数 0

原创 113 路径总和 II(dfs)

1. 问题描述: 给定一个二叉树和一个目标和,找到所有从根节点到叶子节点路径总和等于给定目标和的路径。 说明:叶子节点是指没有子节点的节点。 示例: 给定如下二叉树,以及目标和sum = 22, 5 / \ 4 8 / / \ ...

2020-03-31 18:31:16

阅读数 27

评论数 0

原创 695 岛屿的最大面积(dfs)

1. 问题描述: 给定一个包含了一些 0 和 1 的非空二维数组grid 。 一个岛屿是由一些相邻的1(代表土地) 构成的组合,这里的「相邻」要求两个 1 必须在水平或者竖直方向上相邻。你可以假设grid 的四个边缘都被 0(代表水)包围着。 找到给定的二维数组中最大的岛屿面积。(如果没有岛...

2020-03-30 23:05:34

阅读数 26

评论数 0

原创 200 岛屿数量(dfs)

1. 问题描述: 给定一个由'1'(陆地)和 '0'(水)组成的的二维网格,计算岛屿的数量。一个岛被水包围,并且它是通过水平方向或垂直方向上相邻的陆地连接而成的。你可以假设网格的四个边均被水包围。 示例 1: 输入: 11110 11010 11000...

2020-03-30 22:32:41

阅读数 37

评论数 0

原创 227 基本计算器 II(栈)

1. 问题描述: 实现一个基本的计算器来计算一个简单的字符串表达式的值。 字符串表达式仅包含非负整数,+, - ,*,/ 四种运算符和空格。 整数除法仅保留整数部分。 示例1: 输入: "3+2*2" 输出: 7 示例 2: 输入: " 3/2 "...

2020-03-30 21:51:24

阅读数 29

评论数 0

原创 1162 地图分析(bfs)

1. 问题描述: 你现在手里有一份大小为N x N 的「地图」(网格)grid,上面的每个「区域」(单元格)都用0和1标记好了。其中0代表海洋,1代表陆地,请你找出一个海洋区域,这个海洋区域到离它最近的陆地区域的距离是最大的。 我们这里说的距离是「曼哈顿距离」(Manhattan Distan...

2020-03-30 17:39:33

阅读数 37

评论数 0

原创 129 求根到叶子节点数字之和(递归)

1. 问题描述: 给定一个二叉树,它的每个结点都存放一个0-9的数字,每条从根到叶子节点的路径都代表一个数字。 例如,从根到叶子节点路径 1->2->3 代表数字 123。 计算从根到叶子节点生成的所有数字之和。 说明:叶子节点是指没有子节点的节点。 示例 1: 输入: [...

2020-03-29 19:18:45

阅读数 31

评论数 0

原创 7 反转整数(分析)

1. 问题描述: 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 注意: 假设我们的环境只能存储得下 32 位的有符号整数,则其...

2020-03-28 23:13:17

阅读数 23

评论数 0

原创 120 三角形最短路径和(动态规划)

1. 问题描述: 给定一个三角形,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。 例如,给定三角形: [ [2], [3,4], [6,5,7], [4,1,8,3] ] 2 3 4 6 5 7 4 1 8 3 自顶向下的最小路径和为11(即,2+3+5...

2020-03-28 21:31:51

阅读数 33

评论数 0

原创 110 平衡二叉树(递归)

1. 问题描述: 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 ...

2020-03-27 23:46:55

阅读数 29

评论数 0

原创 100 相同的树(递归)

1. 问题描述: 给定两个二叉树,编写一个函数来检验它们是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例1: 输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3] 输...

2020-03-27 17:03:53

阅读数 32

评论数 0

原创 101 对称二叉树(递归、宽搜)

1. 问题描述: 给定一个二叉树,检查它是否是镜像对称的。 例如,二叉树[1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \ 3 4 4 3 但是下面这个[1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ ...

2020-03-27 16:52:58

阅读数 29

评论数 0

原创 31 下一个排列(分析)

1. 问题描述: 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列。 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列)。 必须原地修改,只允许使用额外常数空间。 以下是一些例子,输入位于左侧列,其相应输出位于右侧列。 1,2,3 → ...

2020-03-26 17:39:26

阅读数 33

评论数 0

原创 202 快乐数(快慢指针、Set判断是否存在环)

1. 问题描述: 编写一个算法来判断一个数是不是“快乐数”。 一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。 示例: 输入: 19 输出: t...

2020-03-25 23:59:44

阅读数 29

评论数 0

原创 Java交换List中的两个元素

java中除了可以使用数组交换元素之外,还可以使用Collections交换List中对应两个下标的元素: import java.util.ArrayList; import java.util.Collections; import java.util.List; public class...

2020-03-25 22:37:09

阅读数 18

评论数 0

原创 46 全排列(递归)

1. 问题描述: 给定一个 没有重复 数字的序列,返回其所有可能的全排列。 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1] ] 来源:力扣(LeetCode) 链接:https...

2020-03-25 22:08:15

阅读数 21

评论数 0

原创 892 三维形体的表面积(分析)

1. 问题描述: 在N*N的网格上,我们放置一些1 * 1 * 1的立方体。 每个值v = grid[i][j]表示v个正方体叠放在对应单元格(i, j)上。 请你返回最终形体的表面积。 示例 1: 输入:[[2]] 输出:10 示例 2: 输入:[[1,2],[3,4]] 输出:34...

2020-03-25 17:42:00

阅读数 26

评论数 0

原创 168 Excel表列名称(递归、分析)

1. 问题描述: 给定一个正整数,返回它在 Excel 表中相对应的列名称。 例如, 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB ... 示例 1: 输入: 1 输...

2020-03-25 15:50:31

阅读数 44

评论数 0

原创 Java 8遍历List,Map语法

在java 8中的语法遍历list与map还有比较简单的语法,其实还是比较好理解的,有的时候可以使用这些方法来简化代码,例子如下: import java.util.ArrayList; import java.util.HashMap; import java.util.List; impo...

2020-03-25 00:09:26

阅读数 20

评论数 0

原创 127 单词接龙(宽搜)

1. 问题描述: 给定两个单词(beginWord和 endWord)和一个字典,找到从beginWord 到endWord 的最短转换序列的长度。转换需遵循如下规则: 每次转换只能改变一个字母。 转换过程中的中间单词必须是字典中的单词。 说明: 如果不存在这样的转换序列,返回 0。 所有单...

2020-03-25 00:02:58

阅读数 23

评论数 0

原创 752 打开转盘锁(宽搜)

1. 问题描述: 你有一个带有四个圆形拨轮的转盘锁。每个拨轮都有10个数字: '0', '1', '2', '3', '4', '5', '6', ...

2020-03-24 15:49:35

阅读数 31

评论数 0

原创 20 有效的括号(栈的使用)

1. 问题描述: 给定一个只包括 '(',')','{','}','[',']'的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括...

2020-03-22 22:32:23

阅读数 21

评论数 0

原创 71 简化路径(模拟、栈)

1. 问题描述: 以 Unix 风格给出一个文件的绝对路径,你需要简化它。或者换句话说,将其转换为规范路径。 在 Unix 风格的文件系统中,一个点(.)表示当前目录本身;此外,两个点 (..)表示将目录切换到上一级(指向父目录);两者都可以是复杂相对路径的组成部分。更多信息请参阅:Linux...

2020-03-22 21:25:30

阅读数 23

评论数 0

原创 32 最长有效括号(递归、栈)

1. 问题描述: 给定一个只包含 '('和 ')'的字符串,找出最长的包含有效括号的子串的长度。 示例1: 输入: "(()" 输出: 2 解释: 最长有效括号子串为 "()" 示例 2: 输入: "...

2020-03-21 23:27:24

阅读数 9

评论数 0

原创 48 旋转图像

1. 问题描述: 给定一个n×n的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。 示例 1: 给定 matrix = [ [1,2,3], [4,5,6], [7,8,9]...

2020-03-20 22:41:19

阅读数 14

评论数 0

原创 130 被围绕的区域(dfs、并查集)

1. 问题描述: 给定一个二维的矩阵,包含'X'和'O'(字母 O)。 找到所有被'X'围绕的区域,并将这些区域里所有的'O'用'X'填充。 示例: X X X X X O O X X X...

2020-03-20 18:42:05

阅读数 25

评论数 0

原创 算法提高 字符串压缩

1. 问题描述: 时间限制:1.0s 内存限制:256.0MB 问题描述   编写一个程序,输入一个字符串,然后采用如下的规则对该字符串当中的每一个字符进行压缩:   (1) 如果该字符是空格,则保留该字符;   (2) 如果该字符是第一次出现或第三次出现或第六次出现,则保留该字符;   (...

2020-03-18 21:50:02

阅读数 28

评论数 0

原创 74 搜索二维矩阵(二分查找)

1. 问题描述: 编写一个高效的算法来判断mxn矩阵中,是否存在一个目标值。该矩阵具有如下特性: 每行中的整数从左到右按升序排列。 每行的第一个整数大于前一行的最后一个整数。 示例1: 输入: matrix = [ [1, 3, 5, 7], [10, 11, 16, ...

2020-03-18 20:02:17

阅读数 19

评论数 0

原创 算法提高 数组求和

1. 问题描述: 输入n个数,围成一圈,求连续m(m<n)个数的和最大为多少? 输入格式 输入的第一行包含两个整数n, m。第二行,共n个整数。 输出格式 输出1行,包含一个整数,连续m个数之和的最大值。 样例输入 10 3 9 10 1 5 9 3 2 6 7 4 样例输出...

2020-03-18 18:24:40

阅读数 25

评论数 0

原创 算法提高 最长滑雪道(递归)

1. 问题描述   小袁非常喜欢滑雪, 因为滑雪很刺激。为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。 小袁想知道在某个区域中最长的一个滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。如下: 一个人可以从某个点滑向上下左右相邻四个点之一,...

2020-03-18 17:28:18

阅读数 44

评论数 0

原创 319 灯泡开关(模拟、分析)

1. 问题描述: 初始时有n个灯泡关闭。 第 1 轮,你打开所有的灯泡。 第 2 轮,每两个灯泡你关闭一次。 第 3 轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭)。第i 轮,每i个灯泡切换一次开关。 对于第n轮,你只切换最后一个灯泡的开关。 找出n轮后有多少个亮着的灯泡。 示例...

2020-03-17 20:05:08

阅读数 19

评论数 0

原创 63 不同路径(记忆型递归)

1. 问题描述: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径? 网格中的障碍物和...

2020-03-16 17:55:13

阅读数 34

评论数 0

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