自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 133. 克隆图

给你无向连通图中一个节点的引用,请你返回该图的深拷贝(克隆)。 图中的每个节点都包含它的值 val(int) 和其邻居的列表(list[Node])。 class Node { public int val; public List<Node> neighbors; } 测...

2020-03-30 19:35:33 96 0

原创 207. 课程表

你这个学期必须选修 numCourse 门课程,记为0到numCourse-1 。 在选修某些课程之前需要一些先修课程。例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们:[0,1] 给定课程总量以及它们的先决条件,请你判断是否可能完成所有课程的学习? 示例 1: ...

2020-03-30 19:09:47 73 0

原创 117. 填充每个节点的下一个右侧节点指针 II

给定一个二叉树 struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL。 初始状态下,所有n...

2020-03-30 16:37:27 35 0

原创 721. 账户合并

给定一个列表 accounts,每个元素 accounts[i]是一个字符串列表,其中第一个元素 accounts[i][0]是名称 (name),其余元素是 emails 表示该帐户的邮箱地址。 现在,我们想合并这些帐户。如果两个帐户都有一些共同的邮件地址,则两个帐户必定属于同一个人。请注意,...

2020-03-29 17:25:24 66 0

原创 5370. 设计地铁系统

请你实现一个类UndergroundSystem,它支持以下 3 种方法: 1.checkIn(int id, string stationName, int t) 编号为id的乘客在 t时刻进入地铁站stationName。 一个乘客在同一时间只能在一个地铁站进入或者离开。 2.checkO...

2020-03-29 13:44:52 76 0

原创 5369. 统计作战单位数

n 名士兵站成一排。每个士兵都有一个 独一无二 的评分 rating 。 每 3 个士兵可以组成一个作战单位,分组规则如下: 从队伍中选出下标分别为 i、j、k 的 3 名士兵,他们的评分分别为 rating[i]、rating[j]、rating[k] 作战单位需满足: rating[i] ...

2020-03-29 12:58:50 58 0

原创 5368. 找出数组中的幸运数

在整数数组中,如果一个整数的出现频次和它的数值大小相等,我们就称这个整数为「幸运数」。 给你一个整数数组 arr,请你从中找出并返回一个幸运数。 如果数组中存在多个幸运数,只需返回 最大 的那个。 如果数组中不含幸运数,则返回 -1 。 示例 1: 输入:arr = [2,2,3,4] 输...

2020-03-29 12:33:23 36 0

原创 并查集

1202. 交换字符串中的元素 给你一个字符串s,以及该字符串中的一些「索引对」数组pairs,其中pairs[i] =[a, b]表示字符串中的两个索引(编号从 0 开始)。 你可以 任意多次交换 在pairs中任意一对索引处的字符。 返回在经过若干次交换后,s可以变成的按字典序最小的字符...

2020-03-27 16:57:48 59 0

原创 1162. 地图分析

你现在手里有一份大小为N x N 的『地图』(网格)grid,上面的每个『区域』(单元格)都用0和1标记好了。其中0代表海洋,1代表陆地,你知道距离陆地区域最远的海洋区域是是哪一个吗?请返回该海洋区域到离它最近的陆地区域的距离。 我们这里说的距离是『曼哈顿距离』(Manhattan Distan...

2020-03-24 10:31:19 58 0

原创 1161. 最大层内元素和

1161. 最大层内元素和 给你一个二叉树的根节点root。设根节点位于二叉树的第 1 层,而根节点的子节点位于第 2 层,依此类推。 请你找出层内元素之和 最大 的那几层(可能只有一层)的层号,并返回其中最小 的那个。 输入:[1,7,0,7,-8,null,null] 输出:2 解释...

2020-03-23 20:37:10 34 0

原创 1160. 拼写单词

给你一份『词汇表』(字符串数组)words和一张『字母表』(字符串)chars。 假如你可以用chars中的『字母』(字符)拼写出 words中的某个『单词』(字符串),那么我们就认为你掌握了这个单词。 注意:每次拼写(指拼写词汇表中的一个单词)时,chars 中的每个字母都只能用一次。 返...

2020-03-23 20:22:20 42 0

原创 1156. 单字符重复子串的最大长度

如果字符串中的所有字符都相同,那么这个字符串是单字符重复的字符串。 给你一个字符串text,你只能交换其中两个字符一次或者什么都不做,然后得到一些单字符重复的子串。返回其中最长的子串的长度。 示例 1: 输入:text = "ababa" 输出:3 示例 2: 输入:t...

2020-03-23 16:28:09 93 0

原创 1155. 掷骰子的N种方法

这里有d个一样的骰子,每个骰子上都有f个面,分别标号为1, 2, ..., f。 我们约定:掷骰子的得到总点数为各骰子面朝上的数字的总和。 如果需要掷出的总点数为target,请你计算出有多少种不同的组合情况(所有的组合情况总共有 f^d 种),模10^9 + 7后返回。 示例 1: 输入...

2020-03-23 14:37:23 84 0

原创 1154. 一年中的第几天

给你一个按YYYY-MM-DD格式表示日期的字符串date,请你计算并返回该日期是当年的第几天。 通常情况下,我们认为 1 月 1 日是每年的第 1 天,1 月 2 日是每年的第 2 天,依此类推。每个月的天数与现行公元纪年法(格里高利历)一致。 class Solution(object...

2020-03-23 11:31:12 36 0

原创 1391. 检查网格中是否存在有效路径

给你一个 m x n 的网格 grid。网格里的每个单元都代表一条街道。grid[i][j] 的街道可以是: 1 表示连接左单元格和右单元格的街道。 2 表示连接上单元格和下单元格的街道。 3表示连接左单元格和下单元格的街道。 4 表示连接右单元格和下单元格的街道。 5 表示连接左单元格和上单元...

2020-03-23 10:46:51 59 0

原创 5178. 四因数

给你一个整数数组 nums,请你返回该数组中恰有四个因数的这些整数的各因数之和。 如果数组中不存在满足题意的整数,则返回 0 。 示例: 输入:nums = [21,4,7] 输出:32 解释: 21 有 4 个因数:1, 3, 7, 21 4 有 3 个因数:1, 2, 4 7 有 2...

2020-03-22 19:44:35 49 0

原创 5349. 安排电影院座位

如上图所示,电影院的观影厅中有 n行座位,行编号从 1到 n,且每一行内总共有 10 个座位,列编号从 1 到 10 。 给你数组reservedSeats,包含所有已经被预约了的座位。比如说,researvedSeats[i]=[3,8],它表示第3行第8个座位被预约了。 请你返回最多能安排...

2020-03-22 18:58:36 133 0

原创 5350. 将整数按权重排序

我们将整数 x的 权重 定义为按照下述规则将 x变成 1所需要的步数: 如果x是偶数,那么x = x / 2 如果x是奇数,那么x = 3 * x + 1 比方说,x=3 的权重为 7 。因为 3 需要 7 步变成 1 (3 --> 10 --> 5 --> 16 -->...

2020-03-22 18:02:48 67 0

原创 5348. 两个数组间的距离值

给你两个整数数组arr1,arr2和一个整数d,请你返回两个数组之间的距离值。 「距离值」定义为符合此描述的元素数目:对于元素arr1[i],不存在任何元素arr2[j]满足 |arr1[i]-arr2[j]| <= d 。 1.简单搜索 class Solution(object...

2020-03-22 16:55:12 95 0

原创 1295. 统计位数为偶数的数字

给你一个整数数组nums,请你返回其中位数为偶数的数字的个数。 1.正常就一个个数字算出它的位数 2.转换成字符串 len(num)就可以取得次数 3.log class Solution(object): def findNumbers(self, nums): ...

2020-03-19 15:00:52 70 0

原创 1297. 子串的最大出现次数

给你一个字符串s,请你返回满足以下条件且出现次数最大的任意子串的出现次数: 子串中不同字母的数目必须小于等于maxLetters。 子串的长度必须大于等于minSize且小于等于maxSize。 示例 1: 输入:s = "aababcaab", maxLetter...

2020-03-19 13:03:31 48 0

原创 1296. 划分数组为连续数字的集合

给你一个整数数组nums和一个正整数k,请你判断是否可以把这个数组划分成一些由k个连续数字组成的集合。 如果可以,请返回True;否则,返回False。 示例 1: 输入:nums = [1,2,3,3,4,4,5,6], k = 4 输出:true 解释:数组可以分成 [1,2,3,4...

2020-03-19 11:37:25 58 0

原创 2018腾讯内部调岗面试试题3——找出数组中比左边大比右边的小的元素

题目:以时间复杂度O(n)从长度为n的数组中找出同时满足下面两个条件的所有元素: (1)该元素比放在它前面的所有元素都大; (2)该元素比放在它后面的所有元素都小。 网上看的题,自己做了也不知道对不对。 思路:1,8,6,9,10,15,12,20 假如让你考虑8这个数字是不是满足条件你怎么...

2020-03-16 16:48:39 106 0

原创 leetcode-第 180 场周赛

大佬都是3-5分钟一题,而我10分钟一题,最后一题还不会。。qaq 5356.矩阵中的幸运数 给你一个m * n的矩阵,矩阵中的数字各不相同。请你按任意顺序返回矩阵中的所有幸运数。 幸运数是指矩阵中满足同时下列两个条件的元素: 在同一行的所有元素中最小 在同一列的所有元素中最大 示...

2020-03-15 13:05:28 61 0

原创 dfs&&bfs

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

2020-03-12 22:29:23 196 0

原创 739. 每日温度

根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数。如果之后都不会升高,请在该位置用0 来代替。 例如,给定一个列表temperatures = [73, 74, 75, 71, 69, 72, 76, 73],你的输出应该是[1, 1, 4, ...

2020-03-11 19:15:01 64 0

原创 128. 最长连续序列

给定一个未排序的整数数组,找出最长连续序列的长度。 要求算法的时间复杂度为O(n)。 示例: 输入:[100, 4, 200, 1, 3, 2] 输出: 4 解释: 最长连续序列是 [1, 2, 3, 4]。它的长度为 4。 1.排序,然后遍历一次统计答案 class Solutio...

2020-03-11 16:33:55 39 0

原创 55. 跳跃游戏

给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 示例1: 输入: [2,3,1,1,4] 输出: true 解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达...

2020-03-09 19:39:32 53 0

原创 49. 字母异位词分组

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

2020-03-09 16:08:45 57 0

原创 34. 在排序数组中查找元素的第一个和最后一个位置

给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 你的算法时间复杂度必须是O(log n) 级别。 如果数组中不存在目标值,返回[-1, -1]。 示例 1: 输入: nums = [5,7,7,8,8,10], targe...

2020-03-09 14:20:10 43 0

原创 只出现一次的数字 I&&只出现一次的数字 2&&只出现一次的数字 3

1.出现一次直接一直异或 2.给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现了三次。找出那个只出现了一次的元素。 classSolution(object): defsingleNumber(self,nums): """ :typen...

2020-03-09 13:35:28 31 0

原创 5354. 通知所有员工所需的时间

公司里有 n 名员工,每个员工的 ID 都是独一无二的,编号从 0 到 n - 1。公司的总负责人通过 headID 进行标识。 在 manager 数组中,每个员工都有一个直属负责人,其中 manager[i] 是第 i 名员工的直属负责人。对于总负责人,manager[headID] = -...

2020-03-09 11:58:21 66 0

原创 5353. 灯泡开关 III

房间中有 n 枚灯泡,编号从 1 到 n,自左向右排成一排。最初,所有的灯都是关着的。 在 k时刻( k 的取值范围是 0 到 n - 1),我们打开 light[k] 这个灯。 灯的颜色要想 变成蓝色 就必须同时满足下面两个条件: 灯处于打开状态。 排在它之前(左侧)的所有灯也都处于打开状...

2020-03-09 11:28:36 86 0

原创 61. 旋转链表

给定一个链表,旋转链表,将链表每个节点向右移动k个位置,其中k是非负数。 示例1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4->5->1->2->3->NULL 解释: 向右旋转 1 步: 5->...

2020-03-07 16:29:43 37 0

原创 148. 排序链表

在O(nlogn) 时间复杂度和常数级空间复杂度下,对链表进行排序。 示例 1: 输入: 4->2->1->3 输出: 1->2->3->4 示例 2: 输入: -1->5->3->4->0 输出: -1->0->3-&...

2020-03-06 15:14:55 43 0

原创 215. 数组中的第K个最大元素

在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 示例 1: 输入: [3,2,1,5,6,4] 和 k = 2 输出: 5 示例2: 输入: [3,2,3,1,2,4,5,5,6] 和 k = 4 输出: 4 1...

2020-03-06 14:41:37 42 0

原创 33. 搜索旋转排序数组

假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组[0,1,2,4,5,6,7]可能变为[4,5,6,7,0,1,2])。 搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回-1。 你可以假设数组中不存在重复的元素。 你的算法时间复杂度必须是O(l...

2020-03-06 10:52:31 34 0

原创 23. 合并K个排序链表

合并k个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。 示例: 输入: [ 1->4->5, 1->3->4, 2->6 ] 输出: 1->1->2->3->4->4->5->6 1.每个链表加入到res,对...

2020-03-05 22:26:09 43 0

原创 124. 二叉树中的最大路径和

给定一个非空二叉树,返回其最大路径和。 本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。 示例 1: 输入: [1,2,3] 1 / \ 2 3 输出: 6 # Definition for a bina...

2020-03-05 21:21:47 35 0

原创 236. 二叉树的最近公共祖先

给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 例如,给定如下二叉树:root =[3,5,1...

2020-03-05 14:51:37 42 0

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