- 博客(13)
- 资源 (2)
- 收藏
- 关注
转载 2020-10-31 O(1) 时间插入、删除和获取随机元素 - 允许重复
381. O(1) 时间插入、删除和获取随机元素 - 允许重复设计一个支持在平均时间复杂度O(1)下,执行以下操作的数据结构。注意: 允许出现重复元素。insert(val):向集合中插入元素 val。remove(val):当 val 存在时,从集合中移除一个 val。getRandom:从现有集合中随机获取一个元素。每个元素被返回的概率应该与其在集合中的数量呈线性相关。示例:// 初始化一个空的集合。RandomizedCollection collection = n...
2020-10-31 08:14:57 108
原创 2020-10-25 数组中的最长山脉
845. 数组中的最长山脉我们把数组 A 中符合下列属性的任意连续子数组 B 称为 “山脉”:B.length >= 3 存在0 < i< B.length - 1使得B[0] < B[1] < ... B[i-1] < B[i] > B[i+1] > ... > B[B.length - 1](注意:B 可以是 A 的任意子数组,包括整个数组 A。)给出一个整数数组A,返回最长“山脉”的长度。如果不含有 “山脉”则返...
2020-10-25 11:32:01 131
原创 2020-10-22 划分字母区间
763. 划分字母区间字符串S由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一个字母只会出现在其中的一个片段。返回一个表示每个字符串片段的长度的列表。示例 1:输入:S = "ababcbacadefegdehijhklij"输出:[9,7,8]解释:划分结果为 "ababcbaca", "defegde", "hijhklij"。每个字母最多出现在一个片段中。像 "ababcbacadefegde", "hijhklij" 的划分是错误的,因为划分的片段数较少。..
2020-10-22 09:47:05 243 1
原创 2020-10-21 长按键入
925. 长按键入你的朋友正在使用键盘输入他的名字name。偶尔,在键入字符c时,按键可能会被长按,而字符可能被输入 1 次或多次。你将会检查键盘输入的字符typed。如果它对应的可能是你的朋友的名字(其中一些字符可能被长按),那么就返回True。示例 1:输入:name = "alex", typed = "aaleex"输出:true解释:'alex' 中的 'a' 和 'e' 被长按。示例 2:输入:name = "saeed", typed =...
2020-10-21 00:32:40 107
转载 2020-10-20 重排链表
143. 重排链表难度中等428收藏分享切换为英文接收动态反馈给定一个单链表L:L0→L1→…→Ln-1→Ln ,将其重新排列后变为:L0→Ln→L1→Ln-1→L2→Ln-2→…你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例1:给定链表 1->2->3->4, 重新排列为 1->4->2->3.示例 2:给定链表 1->2->3->4->5, 重新排列为 1->5->2...
2020-10-20 23:59:53 1037
原创 2020-10-19 比较含退格的字符串
844. 比较含退格的字符串给定S和T两个字符串,当它们分别被输入到空白的文本编辑器后,判断二者是否相等,并返回结果。#代表退格字符。注意:如果对空文本输入退格字符,文本继续为空。示例 1:输入:S = "ab#c", T = "ad#c"输出:true解释:S 和 T 都会变成 “ac”。示例 2:输入:S = "ab##", T = "c#d#"输出:true解释:S 和 T 都会变成 “”。示例 3:输入:S = "a##c...
2020-10-19 16:06:55 108
原创 2020-10-18 删除链表的倒数第N个节点
19. 删除链表的倒数第N个节点给定一个链表,删除链表的倒数第n个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.说明:给定的n保证是有效的。进阶:你能尝试使用一趟扫描实现吗?解题思路遍历每个结点存入栈中,最后pop出n个结点,并修改连接关系。这里设置哑结点防止头部结点被删除。class Soluti...
2020-10-18 17:17:09 139 1
原创 2020-10-17 N皇后 II
52. N皇后 IIn皇后问题研究的是如何将n个皇后放置在n×n的棋盘上,并且使皇后彼此之间不能相互攻击。上图为 8 皇后问题的一种解法。给定一个整数n,返回n皇后不同的解决方案的数量。示例:输入: 4输出: 2解释: 4 皇后问题存在如下两个不同的解法。[[".Q..", // 解法 1 "...Q", "Q...", "..Q."],["..Q.", // 解法 2 "Q...", "...Q", ".Q.."]]...
2020-10-17 11:52:00 129
原创 2020-10-16 有序数组的平方
977. 有序数组的平方难度简单132收藏分享切换为英文接收动态反馈给定一个按非递减顺序排序的整数数组A,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。示例 1:输入:[-4,-1,0,3,10]输出:[0,1,9,16,100]示例 2:输入:[-7,-3,2,3,11]输出:[4,9,9,49,121]提示:1 <= A.length <= 10000 -10000 <= A[i] <= 10000 ...
2020-10-16 08:54:50 186
原创 2020-10-15 填充每个节点的下一个右侧节点指针
116. 填充每个节点的下一个右侧节点指针给定一个完美二叉树,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下:struct Node { int val; Node *left; Node *right; Node *next;}填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为NULL。初始状态下,所有next 指针都被设置为NULL。示例:正在上传…重新上传取消...
2020-10-15 09:27:44 74
原创 第 210 场周赛
1614.括号的最大嵌套深度(简单)题目描述如果字符串满足一下条件之一,则可以称之为有效括号字符串(valid parentheses string,可以简写为VPS):字符串是一个空字符串"",或者是一个不为"("或")"的单字符。 字符串可以写为AB(A与B字符串连接),其中A和B都是有效括号字符串。 字符串可以写为(A),其中A是一个有效括号字符串。类似地,可以定义任何有效括号字符串S的嵌套深度depth(S):depth("...
2020-10-14 17:26:46 131 1
原创 2020-10-14 查找常用字符
1002. 查找常用字符给定仅有小写字母组成的字符串数组 A,返回列表中的每个字符串中都显示的全部字符(包括重复字符)组成的列表。例如,如果一个字符在每个字符串中出现 3 次,但不是 4 次,则需要在最终答案中包含该字符 3 次。你可以按任意顺序返回答案。示例 1:输入:["bella","label","roller"]输出:["e","l","l"]示例 2:输入:["cool","lock","cook"]输出:["c","o"]提示:1 <= A.l
2020-10-14 14:04:19 216
原创 2020-10-13 两两交换链表中的节点
24. 两两交换链表中的节点给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。示例 1:输入:head = [1,2,3,4]输出:[2,1,4,3]示例 2:输入:head = []输出:[]示例 3:输入:head = [1]输出:[1]提示:链表中节点的数目在范围 [0, 100] 内0 <= Node.val <= 100方法一:迭代.
2020-10-13 14:56:27 77
深度学习21天实战Caffe
2019-04-25
《深入理解Java虚拟机:JVM高级特性与最佳实践》高清完整PDF版
2018-09-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人