自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hebtu666

少说,多做。

原创 leetcode114. 二叉树展开为链表

给定一个二叉树,原地将它展开为链表。 例如,给定二叉树 1 / \ 2 5 / \ \ 3 4 6 将其展开为: 1 \ 2 \ 3 \ 4 \ 5 \ 6 思路:所有左子树的最右节点接上右子树即可。 比如例子中:3接上4...

2020-01-31 19:47:01 904 0

原创 leetcode119. 杨辉三角 II 你能比我代码更短吗?

给定一个非负索引k,其中k≤33,返回杨辉三角的第k行。 示例: 输入: 3 输出: [1,3,3,1]按照定义写即可。 class Solution: def getRow(self, rowIndex: int) -> List[int]: l=[1...

2020-01-31 19:26:34 2456 2

原创 leetcode145. 二叉树的后序遍历 意想不到的骚操作

给定一个二叉树,返回它的 后序遍历。 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [3,2,1] 进阶:递归算法很简单,你可以通过迭代算法完成吗? 思路:前序遍历左右交换,然后倒序输出 原因:前序:中左右, 我们左右交换遍历:中右左 序列反...

2020-01-31 19:02:53 2612 3

原创 leetcode52. N皇后 II 最强解法直接秒杀100%

n皇后问题研究的是如何将 n个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。 上图为 8 皇后问题的一种解法。 给定一个整数 n,返回 n 皇后不同的解决方案的数量。 示例: 输入: 4 输出: 2 解释: 4 皇后问题存在如下两个不同的解法。 [ [".Q....

2020-01-31 18:48:23 5831 37

原创 leetcode350. 两个数组的交集 II

给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2,2] 示例 2: 输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出: [4,9] 说明: 输出结果中每个元...

2020-01-30 12:21:26 1021 0

原创 leetcode349. 两个数组的交集

给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2] 示例 2: 输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出: [9,4] 说明: 输出结果中的每个元素...

2020-01-30 12:14:30 816 0

原创 leetcode340. 至多包含 K 个不同字符的最长子串

给定一个字符串 s ,找出至多包含 k 个不同字符的最长子串 T。 示例 1: 输入: s = "eceba", k = 2 输出: 3 解释: 则 T 为 "ece",所以长度为 3。 示例 2: 输入: s = "aa", k ...

2020-01-30 11:48:53 1519 0

原创 leetcode167. 两数之和 II - 并没有那么easy的easy题

给定一个已按照升序排列的有序数组,找到两个数使得它们相加之和等于目标数。 函数应该返回这两个下标值 index1 和 index2,其中 index1必须小于index2。 说明: 返回的下标值(index1 和 index2)不是从零开始的。 你可以假设每个输入只对应唯一的答案,而且你不可...

2020-01-29 16:36:11 2204 2

原创 leetcode164. 最大间距 借桶思想秒掉hard题

给定一个无序的数组,找出数组在排序之后,相邻元素之间最大的差值。 如果数组元素个数小于 2,则返回 0。 示例1: 输入: [3,6,9,1] 输出: 3 解释: 排序后的数组是 [1,3,6,9], 其中相邻元素 (3,6) 和 (6,9) 之间都存在最大差值 3。 示例2: 输入: [...

2020-01-29 16:31:32 1788 0

原创 leetcode161. 相隔为 1 的编辑距离

给定两个字符串s 和 t,判断他们的编辑距离是否为 1。 注意: 满足编辑距离等于 1 有三种可能的情形: 往 s中插入一个字符得到 t 从 s中删除一个字符得到 t 在 s中替换一个字符得到 t 示例 1: 输入: s = "ab", t = "acb&qu...

2020-01-29 16:22:43 2103 0

原创 leetcode159. 至多包含两个不同字符的最长子串

给定一个字符串 s ,找出至多包含两个不同字符的最长子串 t 。 示例 1: 输入: "eceba" 输出: 3 解释: t 是 "ece",长度为3。 示例 2: 输入: "ccaabbb" 输出: 5 解释: t 是 "...

2020-01-29 16:08:44 1097 1

原创 leetcode202. 快乐数

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

2020-01-29 13:33:48 781 0

原创 leetcode57. 插入区间

给出一个无重叠的 ,按照区间起始端点排序的区间列表。 在列表中插入一个新的区间,你需要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。 示例1: 输入: intervals = [[1,3],[6,9]], newInterval = [2,5] 输出: [[1,5],[6...

2020-01-29 13:23:18 1104 0

原创 leetcode56. 合并区间

给出一个区间的集合,请合并所有重叠的区间。 示例 1: 输入: [[1,3],[2,6],[8,10],[15,18]] 输出: [[1,6],[8,10],[15,18]] 解释: 区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6]. 示例2: 输入: [[1,4],[4,...

2020-01-29 12:49:07 907 1

原创 leetcode263. 丑数

编写一个程序判断给定的数是否为丑数。 丑数就是只包含质因数2, 3, 5的正整数。 示例 1: 输入: 6 输出: true 解释: 6 = 2 ×3 示例 2: 输入: 8 输出: true 解释: 8 = 2 × 2 ×2 示例3: 输入: 14 输出: false 解释: 14 不...

2020-01-28 23:23:12 755 0

原创 leetcode346. 数据流中的移动平均值

给定一个整数数据流和一个窗口大小,根据该滑动窗口的大小,计算其所有整数的移动平均值。 示例: MovingAverage m = new MovingAverage(3); m.next(1) = 1 m.next(10) = (1 + 10) / 2 m.next(3) = (1 + 10 ...

2020-01-28 23:15:28 1529 0

原创 leetcode339. 嵌套列表权重和

给定一个嵌套的整数列表,请返回该列表按深度加权后所有整数的总和。 每个元素要么是整数,要么是列表。同时,列表中元素同样也可以是整数或者是另一个列表。 示例 1: 输入: [[1,1],2,[1,1]] 输出: 10 解释: 因为列表中有四个深度为 2 的 1 ,和一个深度为 1 的 2。 示...

2020-01-28 23:10:16 905 0

原创 leetcode330. 按要求补齐数组 顶级难度玄学贪心

给定一个已排序的正整数数组 nums,和一个正整数n 。从[1, n]区间内选取任意个数字补充到nums中,使得[1, n]区间内的任何数字都可以用nums中某几个数字的和来表示。请输出满足上述要求的最少需要补充的数字个数。 示例1: 输入: nums = [1,3], n = 6 输出: 1...

2020-01-28 23:03:11 3508 1

原创 leetcode329. 矩阵中的最长递增路径

给定一个整数矩阵,找出最长递增路径的长度。 对于每个单元格,你可以往上,下,左,右四个方向移动。 你不能在对角线方向上移动或移动到边界外(即不允许环绕)。 示例 1: 输入: nums = [ [9,9,4], [6,6,8], [2,1,1] ] 输出: 4 解释: 最长递增路径为[...

2020-01-28 22:36:31 707 0

原创 leetcode345. 反转字符串中的元音字母

编写一个函数,以字符串作为输入,反转该字符串中的元音字母。 示例 1: 输入: "hello" 输出: "holle" 示例 2: 输入: "leetcode" 输出: "leotcede" 说明: 元音字母不包...

2020-01-28 22:30:17 667 0

原创 leetcode348. 判定井字棋胜负 好麻烦的代码

请在 n ×n 的棋盘上,实现一个判定井字棋(Tic-Tac-Toe)胜负的神器,判断每一次玩家落子后,是否有胜出的玩家。 在这个井字棋游戏中,会有 2 名玩家,他们将轮流在棋盘上放置自己的棋子。 在实现这个判定器的过程中,你可以假设以下这些规则一定成立: 1. 每一步棋都是在棋盘内的,并且...

2020-01-28 22:23:30 3801 1

原创 leetcode162. 寻找峰值 变种二分见过吗

峰值元素是指其值大于左右相邻值的元素。 给定一个输入数组nums,其中 nums[i] ≠ nums[i+1],找到峰值元素并返回其索引。 数组可能包含多个峰值,在这种情况下,返回任何一个峰值所在位置即可。 你可以假设nums[-1] = nums[n] = -∞。 示例 1: 输入: ...

2020-01-28 17:17:40 2237 1

原创 leetcode191. 位1的个数

编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’的个数(也被称为汉明重量)。 示例 1: 输入:00000000000000000000000000001011 输出:3 解释:输入的二进制串 00000000000000000000000000001011中,共...

2020-01-28 17:09:31 656 0

原创 leetcode189. 旋转数组

给定一个数组,将数组中的元素向右移动k个位置,其中k是非负数。 示例 1: 输入: [1,2,3,4,5,6,7] 和 k = 3 输出: [5,6,7,1,2,3,4] 解释: 向右旋转 1 步: [7,1,2,3,4,5,6] 向右旋转 2 步: [6,7,1,2,3,4,5] 向右旋转 ...

2020-01-28 16:43:29 689 0

原创 leetcode186. 翻转字符串里的单词 II

给定一个字符串,逐个翻转字符串中的每个单词。 示例: 输入: ["t","h","e"," ","s","k","y"," ",&qu...

2020-01-28 16:39:31 792 0

原创 leetcode292. Nim 游戏

你和你的朋友,两个人一起玩Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。 你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。 示例: 输入: 4 输出: false 解释: 如果...

2020-01-28 02:23:21 2352 1

原创 leetcode252. 会议室

给定一个会议时间安排的数组,每个会议时间都会包括开始和结束的时间 [[s1,e1],[s2,e2],...] (si < ei),请你判断一个人是否能够参加这里面的全部会议。 示例 1: 输入: [[0,30],[5,10],[15,20]] 输出: false 示例 2: 输入: [...

2020-01-28 02:18:06 984 0

原创 leetcode283. 移动零 比官方更好的解法。

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 说明: 必须在原数组上操作,不能拷贝额外的数组。 尽量减少操作次数。 思路:记录0的个数(即当前数需要往前移动的长度)...

2020-01-28 02:08:30 3981 29

原创 leetcode219. 存在重复元素 II

给定一个整数数组和一个整数k,判断数组中是否存在两个不同的索引i和j,使得nums [i] = nums [j],并且 i 和 j的差的绝对值最大为 k。 示例1: 输入: nums = [1,2,3,1], k = 3 输出: true 示例 2: 输入: nums = [1,0,1,1]...

2020-01-26 17:07:44 1016 0

原创 leetcode217. 存在重复元素(vip题)超简单

给定一个整数数组,判断是否存在重复元素。 如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。 示例 1: 输入: [1,2,3,1] 输出: true 示例 2: 输入: [1,2,3,4] 输出: false 示例3: 输入: [1,1...

2020-01-26 17:03:28 739 0

原创 leetcode204. 计数质数(vip题)

统计所有小于非负整数n的质数的数量。 示例: 输入: 10 输出: 4 解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。 思路:筛法,见代码。 class Solution { public int countPrimes(int n) { ...

2020-01-26 16:59:28 967 0

原创 leetcode243. 最短单词距离(vip题)好像挺简单?

给定一个单词列表和两个单词 word1 和 word2,返回列表中这两个单词之间的最短距离。 示例: 假设 words = ["practice", "makes", "perfect", "coding", &qu...

2020-01-26 16:43:18 1939 10

原创 leetcode 73. 矩阵置零

给定一个m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。 示例1: 输入: [ [1,1,1], [1,0,1], [1,1,1] ] 输出: [ [1,0,1], [0,0,0], [1,0,1] ] 示例2: 输入: [ [0,1,2,0],...

2020-01-25 23:25:50 1473 0

原创 leetcode95. 不同的二叉搜索树 II

给定一个整数 n,生成所有由 1 ...n 为节点所组成的二叉搜索树。 示例: 输入: 3 输出: [ [1,null,3,2], [3,2,null,1], [3,1,null,null,2], [2,1,3], [1,null,2,null,3] ] 解释: 以上的输出对应以下 5 种不同...

2020-01-25 22:48:03 1021 0

原创 leetcode96. 不同的二叉搜索树 动归vs数学?

给定一个整数 n,求以1 ...n为节点组成的二叉搜索树有多少种? 示例: 输入: 3 输出: 5 解释: 给定 n = 3, 一共有 5 种不同结构的二叉搜索树: 1 3 3 2 1 \ / / / \ \ 3 2 1 1 3 ...

2020-01-25 22:39:02 4583 1

原创 三个博弈基础

(一)巴什博奕(Bash Game):只有一堆n个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取m个。最后取光者得胜。 显然,如果n=m+1,那么由于一次最多只能取m个,所以,无论先取者拿走多少个,后取者都能够一次拿走剩余的物品,后者取胜。因此我们发现了如何取胜的法则:如果n=(m...

2020-01-25 22:07:39 1206 0

原创 数论基础代码合集

欧几里德 #include<iostream> using namespace std; int hcf(int a,int b) { int r=0; while(b!=0) { r=a%b; a=b; b=r; } return(a); } lcd(int u,...

2020-01-25 22:07:09 2235 1

原创 22种编程语言新年快乐

请允许我用22种编程语言,祝大家新年快乐 C语言:printf(“祝大家新年快乐”); C++ : cout<<“祝大家新年快乐”; OC: NSLog(@“祝大家新年快乐”) QBasic : Print “祝大家新年快乐” Asp : Response.Write “祝大...

2020-01-24 18:46:11 12066 60

原创 leetcode67. 二进制求和

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

2020-01-24 13:30:05 1337 1

原创 leetcode80. 删除排序数组中的重复项 II

给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素最多出现两次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例1: 给定 nums = [1,1,1,2,2,3], 函数应返回新长度 length = ...

2020-01-24 13:25:48 755 0

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