leetcode
molly_d
我希望你可以像我一样一想到未来就繁星一片
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
235. 二叉搜索树的最近公共祖先
给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 例如,给定如下二叉搜索树:root =[6,2,8,0,4,7,9,null,null,3,5] 示例 1: 输入: root = [6,2,8,0,4,7,9,null,null,3,5], p = 2, q = 8 输出: 6 解释:...原创 2020-06-25 08:10:05 · 201 阅读 · 0 评论 -
面试题 05.07. 配对交换
配对交换。编写程序,交换某个整数的奇数位和偶数位,尽量使用较少的指令(也就是说,位0与位1交换,位2与位3交换,以此类推)。 示例1: 输入:num = 2(或者0b10) 输出 1 (或者 0b01) 示例2: 输入:num = 3 输出:3 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/exchange-lcci 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 思路: 拿出整数的奇位和偶数位,然后奇数位...原创 2020-06-24 10:29:30 · 278 阅读 · 0 评论 -
1399. 统计最大组的数目
给你一个整数 n。请你先求出从 1到 n 的每个整数 10 进制表示下的数位和(每一位上的数字相加),然后把数位和相等的数字放到同一个组中。 请你统计每个组中的数字数目,并返回数字数目并列最多的组有多少个。 示例 1: 输入:n = 13 输出:4 解释:总共有 9 个组,将 1 到 13 按数位求和后这些组分别是: [1,10],[2,11],[3,12],[4,13],[5],[6],[7],[8],[9]。总共有 4 个组拥有的数字并列最多。 示例 2: 输入:n = 2 输出:2 ...原创 2020-06-24 09:54:09 · 341 阅读 · 0 评论 -
剑指 Offer 64. 求1+2+…+n
求 1+2+...+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。 示例 1: 输入: n = 3 输出:6 示例 2: 输入: n = 9 输出:45 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/qiu-12n-lcof 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 思路:阿欧,我会的方法他都不让用,发现这种题,一般就是用...原创 2020-06-24 08:56:45 · 156 阅读 · 0 评论 -
用队列实现栈
使用队列实现栈的下列操作: push(x) -- 元素 x 入栈 pop() -- 移除栈顶元素 top() -- 获取栈顶元素 empty() -- 返回栈是否为空 注意: 你只能使用队列的基本操作-- 也就是push to back, peek/pop from front, size, 和is empty这些操作是合法的。 你所使用的语言也许不支持队列。你可以使用 list 或者 deque(双端队列)来模拟一个队列, 只要是标准的队列操作即可。 你可以假设所有操作都是有效的(例如, 对...原创 2020-06-24 08:24:16 · 254 阅读 · 0 评论 -
剑指 Offer 24. 反转链表
定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/fan-zhuan-lian-biao-lcof 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 方法一。 我也不知道当时咋想..原创 2020-06-23 17:02:14 · 170 阅读 · 0 评论 -
剑指 Offer 54. 二叉搜索树的第k大节点
给定一棵二叉搜索树,请找出其中第k大的节点。 示例 1: 输入: root = [3,1,4,null,2], k = 1 3 / \ 1 4 \ 2 输出: 4 示例 2: 输入: root = [5,3,6,2,4,null,null,1], k = 3 5 / \ 3 6 / \ 2 4 / 1 输出: 4 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/pro...原创 2020-06-23 15:25:47 · 153 阅读 · 0 评论 -
剑指 Offer 09. 用两个栈实现队列
用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead操作返回 -1 ) 示例 1: 输入: ["CQueue","appendTail","deleteHead","deleteHead"] [[],[3],[],[]] 输出:[null,null,3,-1] 示例 2: 输入: ["CQueue","deleteHead","appendTai..原创 2020-06-23 13:43:36 · 303 阅读 · 0 评论 -
01.01. 判定字符是否唯一
实现一个算法,确定一个字符串 s 的所有字符是否全都不同。 示例 1: 输入: s = "leetcode" 输出: false 示例 2: 输入: s = "abc" 输出: true 0 <= len(s) <= 100 如果你不使用额外的数据结构,会很加分。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/is-unique-lcci 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 方...原创 2020-06-23 11:31:42 · 311 阅读 · 0 评论 -
16.07. 最大数值
编写一个方法,找出两个数字a和b中最大的那一个。不得使用if-else或其他比较运算符。 示例: 输入: a = 1, b = 2 输出: 2 运用数学公式: ma x = ((a+b)+|a-b|)/2; 但是这里要考虑,a+b整形范围内可能会溢出,所以将其转换成long int maximum(int a, int b) { long c = a; long d = b; return int(((c+d)+abs(c-d))/2).原创 2020-06-23 10:56:58 · 211 阅读 · 0 评论 -
191. 位1的个数
编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’的个数(也被称为汉明重量)。 输入:00000000000000000000000000001011 输出:3 解释:输入的二进制串 00000000000000000000000000001011中,共有三位为 '1'。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/number-of-1-bits 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。..原创 2020-06-23 10:11:06 · 150 阅读 · 0 评论 -
递减栈
739. 每日温度 请根据每日 气温 列表,重新生成一个列表。对应位置的输出为:要想观测到更高的气温,至少需要等待的天数。如果气温在这之后都不会升高,请在该位置用0 来代替。 例如,给定一个列表temperatures = [73, 74, 75, 71, 69, 72, 76, 73],你的输出应该是[1, 1, 4, 2, 1, 1, 0, 0]。 提示:气温 列表长度的范围是[1, 30000]。每个气温的值的均为华氏度,都是在[30, 100]范围内的整数。 栈中村的是列表...原创 2020-06-11 23:04:01 · 229 阅读 · 0 评论 -
优先队列-347. 前 K 个高频元素
给定一个非空的整数数组,返回其中出现频率前k高的元素。 示例 1: 输入: nums = [1,1,1,2,2,3], k = 2 输出: [1,2] 示例 2: 输入: nums = [1], k = 1 输出: [1] 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/top-k-frequent-elements 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 思路:主要是用了堆,用优先队列实现了小根...原创 2020-06-04 22:14:42 · 164 阅读 · 0 评论 -
二叉搜索树
1038. 从二叉搜索树到更大和树 给出二叉 搜索 树的根节点,该二叉树的节点值各不相同,修改二叉树,使每个节点 node的新值等于原树中大于或等于node.val的值之和。 提醒一下,二叉搜索树满足下列约束条件: 节点的左子树仅包含键 小于 节点键的节点。 节点的右子树仅包含键 大于 节点键的节点。 左右子树也必须是二叉搜索树。 思路:逆中序遍历,一个全局变量的累加,也就是右子树的累加的最少,根结点次之,左子树最多,因为比他大的最多,所以放在后面访问他 class Solution { ...原创 2020-06-03 07:42:15 · 280 阅读 · 0 评论 -
1051. 高度检查器
学校在拍年度纪念照时,一般要求学生按照 非递减 的高度顺序排列。 请你返回至少有多少个学生没有站在正确位置数量。该人数指的是:能让所有学生以 非递减 高度排列的必要移动人数。 示例: 输入:[1,1,4,2,1,3] 输出:3 解释: 高度为 4、3 和最后一个 1 的学生,没有站在正确的位置。 def heightchecker(heights): a=sorted...原创 2019-10-17 21:02:41 · 108 阅读 · 0 评论 -
657. 机器人能否返回原点
在二维平面上,有一个机器人从原点 (0, 0) 开始。给出它的移动顺序,判断这个机器人在完成移动后是否在(0, 0) 处结束。 移动顺序由字符串表示。字符 move[i] 表示其第 i 次移动。机器人的有效动作有R(右),L(左),U(上)和 D(下)。如果机器人在完成所有动作后返回原点,则返回 true。否则,返回 false。 注意:机器人“面朝”的方向无关紧要。 “R” 将始终使机器...原创 2019-10-11 21:04:07 · 115 阅读 · 0 评论 -
226. 翻转二叉树
题目描述: 翻转一棵二叉树。 示例: 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 输出: 4 / \ 7 2 / \ / \ 9 6 3 1 代码: def invertTree(self, root): if root != None: t = ro...原创 2019-10-11 20:34:33 · 141 阅读 · 0 评论 -
vector二维数组运用
832.Flipping an Image Easy 552114FavoriteShare Given a binary matrixA, we want to flip the image horizontally, then invert it, and return the resulting image. To flip an image horizontally means...原创 2019-07-31 11:12:55 · 1176 阅读 · 0 评论 -
5079. 三个有序数组的交集
题目描述: 给出三个均为 严格递增排列 的整数数组arr1,arr2 和arr3。 返回一个由仅 在这三个数组中同时出现的整数所构成的有序数组。 示例: 输入: arr1 = [1,2,3,4,5], arr2 = [1,2,5,7,9], arr3 = [1,3,4,5,8] 输出: [1,5] 解释: 只有 1 和 5 同时在这三个数组中出现. 代码: 1. de...原创 2019-10-08 19:44:40 · 587 阅读 · 0 评论 -
617. 合并二叉树
题目描述: 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。 你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为NULL 的节点将直接作为新二叉树的节点。 示例1: 输入: Tree 1 Tree 2 ...原创 2019-10-08 20:28:26 · 211 阅读 · 1 评论 -
804. 唯一摩尔斯密码词
题目描述: 国际摩尔斯密码定义一种标准编码方式,将每个字母对应于一个由一系列点和短线组成的字符串,比如: "a" 对应 ".-", "b" 对应 "-...", "c" 对应 "-.-.", 等等。 为了方便,所有26个英文字母对应摩尔斯密码表如下: [".-","-...","-.-.","-..",".","..-.","--.","....","..",".---","-.-","....原创 2019-10-09 08:43:30 · 122 阅读 · 0 评论 -
832. 翻转图像
题目描述: 给定一个二进制矩阵A,我们想先水平翻转图像,然后反转图像并返回结果。 水平翻转图片就是将图片的每一行都进行翻转,即逆序。例如,水平翻转[1, 1, 0]的结果是[0, 1, 1]。 反转图片的意思是图片中的0全部被1替换,1全部被0替换。例如,反转[0, 1, 1]的结果是[1, 0, 0]。 示例 1: 输入: [[1,1,0],[1,0,1]...原创 2019-10-09 15:52:28 · 176 阅读 · 0 评论 -
461. 汉明距离
题目描述: 两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。 给出两个整数 x 和 y,计算它们之间的汉明距离。 注意: 0 ≤ x, y < 231. 示例: 输入: x = 1, y = 4 输出: 2 解释: 1 (0 0 0 1) 4 (0 1 0 0) ↑ ↑ 上面的箭头指出了对应二进制位不同的位置。 代码: de...原创 2019-10-11 20:11:23 · 111 阅读 · 0 评论 -
1089. Duplicate Zeros
Given a fixed lengtharrayarrof integers, duplicate each occurrence of zero, shifting the remaining elements to the right. Note that elements beyond the length of the original array are not written...原创 2019-07-29 17:22:29 · 359 阅读 · 0 评论
分享