自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 315. 计算右侧小于当前元素的个数

给定一个整数数组 nums,按要求返回一个新数组counts。数组 counts 有该性质: counts[i] 的值是nums[i] 右侧小于nums[i] 的元素的数量。 示例: 输入:[5,2,6,1] 输出:[2,1,1,0] 解释: 5 的右侧有 2 个更小的元素 (2 和 1)...

2020-07-28 13:23:40 25 0

原创 面试题 17.13. 恢复空格

哦,不!你不小心把一个长篇文章中的空格、标点都删掉了,并且大写也弄成了小写。像句子"I reset the computer. It still didn’t boot!"已经变成了"iresetthecomputeritstilldidntboot"。在处...

2020-07-28 11:42:17 26 0

原创 32. 最长有效括号

给定一个只包含 '('和 ')'的字符串,找出最长的包含有效括号的子串的长度。 示例1: 输入: "(()" 输出: 2 解释: 最长有效括号子串为 "()" 1.栈,记录下匹配的2个项的下标依次存储辅助数组,然...

2020-07-27 20:04:08 26 0

原创 718. 最长重复子数组

给两个整数数组A和B,返回两个数组中公共的、长度最长的子数组的长度。 示例: 输入: A: [1,2,3,2,1] B: [3,2,1,4,7] 输出:3 解释: 长度最长的公共子数组是 [3, 2, 1] 。 1.暴力生成所有子数组,依次判断。更直接的暴力。 2. class So...

2020-07-27 18:37:10 20 0

原创 合并K个排序链表

合并k个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。 示例: 输入: [ 1->4->5, 1->3->4, 2->6 ] 输出: 1->1->2->3->4->4->5->6 1.利用辅助数组,排序,重建...

2020-07-25 18:07:15 25 0

原创 378. 有序矩阵中第K小的元素

给定一个n x n矩阵,其中每行和每列元素均按升序排序,找到矩阵中第 k 小的元素。 请注意,它是排序后的第 k 小元素,而不是第 k 个不同的元素。 示例: matrix = [ [ 1, 5, 9], [10, 11, 13], [12, 13, 15] ], k = 8, 返回 ...

2020-07-25 17:18:17 35 0

原创 heapq实现优先队列

import heapq class PriorityQueue: def __init__(self): self._queue = [] self._index =0 def push(self, item, priority): # 传入两个...

2020-07-25 16:57:25 47 0

原创 508. 出现次数最多的子树元素和

给你一个二叉树的根结点,请你找出出现次数最多的子树元素和。一个结点的「子树元素和」定义为以该结点为根的二叉树上所有结点的元素之和(包括结点本身)。 你需要返回出现次数最多的子树元素和。如果有多个元素出现的次数相同,返回所有出现次数最多的子树元素和(不限顺序)。 示例 1: 输入: 5 ...

2020-07-25 14:00:24 28 0

原创 面试题 16.24. 数对和

设计一个算法,找出数组中两数之和为指定值的所有整数对。一个数只能属于一个数对。 示例 1: 输入: nums = [5,6,5], target = 11 输出: [[5,6]] 1.hash 2.排序+双指针(本质是找2个数等于target) class Solution: ...

2020-07-25 13:45:53 35 0

原创 1514. 概率最大的路径

给你一个由 n 个节点(下标从 0 开始)组成的无向加权图,该图由一个描述边的列表组成,其中 edges[i] = [a, b] 表示连接节点 a 和 b 的一条无向边,且该边遍历成功的概率为 succProb[i] 。 指定两个节点分别作为起点 start 和终点 end ,请你找出从起点到终...

2020-07-15 17:57:20 92 0

原创 1513. 仅含 1 的子串数

给你一个二进制字符串 s(仅由 '0' 和 '1' 组成的字符串)。 返回所有字符都为 1 的子字符串的数目。 由于答案可能很大,请你将它对 10^9 + 7 取模后返回。 示例 1: 输入:s = "0110111" 输出:9 ...

2020-07-14 19:04:02 79 0

原创 1509. 三次操作后最大值与最小值的最小差

给你一个数组nums,每次操作你可以选择nums中的任意一个元素并将它改成任意值。 请你返回三次操作后,nums中最大值与最小值的差的最小值。 示例 1: 输入:nums = [5,3,2,4] 输出:0 解释:将数组 [5,3,2,4] 变成 [2,2,2,2]. 最大值与最小值的差为 2...

2020-07-14 17:00:51 42 0

原创 221. 最大正方形&&1277. 统计全为 1 的正方形子矩阵&&1504. 统计全 1 子矩形&&面试题 17.23. 最大黑方阵

221. 最大正方形 在一个由 0 和 1 组成的二维矩阵内,找到只包含 1 的最大正方形,并返回其面积。 示例: 输入: 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 输出: 4 dp[i][j],表示以i,j为左下角坐标的正方形的变长 dp方程:...

2020-07-14 11:43:24 52 0

原创 快速幂

快速计算n的k次方 def pow(num,n): #非递归 res=1 while n: if n&1:res*=num num*=num n>>=1 return res def pow(num,n): #递归 if n==0:retu...

2020-07-13 18:26:33 40 0

原创 1498. 满足条件的子序列数目

给你一个整数数组 nums 和一个整数 target 。 请你统计并返回 nums 中能满足其最小元素与最大元素的 和 小于或等于 target 的 非空 子序列的数目。 由于答案可能很大,请将结果对 10^9 + 7 取余后返回。 示例 1: 输入:nums = [3,5,6,7], t...

2020-07-13 16:25:01 104 0

原创 1497. 检查数组对是否可以被 k 整除

给你一个整数数组 arr 和一个整数 k ,其中数组长度是偶数,值为 n 。 现在需要把数组恰好分成 n /2 对,以使每对数字的和都能够被 k 整除。 如果存在这样的分法,请返回 True ;否则,返回 False 。 数学题: (A+B)%k==A%k+B%k 开一个长度为K的空间m...

2020-07-13 15:32:45 77 0

原创 1493. 删掉一个元素以后全为 1 的最长子数组

给你一个二进制数组nums,你需要从中删掉一个元素。 请你在删掉元素的结果数组中,返回最长的且只包含 1 的非空子数组的长度。 如果不存在这样的子数组,请返回 0 。 1.滑动窗口 class Solution: def longestSubarray(self, nums: ...

2020-07-13 10:15:27 86 0

原创 1492. n 的第 k 个因子

给你两个正整数n 和k。 如果正整数 i 满足 n % i == 0 ,那么我们就说正整数 i 是整数 n的因子。 考虑整数 n的所有因子,将它们 升序排列。请你返回第 k个因子。如果 n的因子数少于 k,请你返回 -1。 1.生成所有存起来,然后判断,o(nlogn)。。。很暴力 2.o...

2020-07-13 09:41:06 37 0

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