2018年4月9日

292 Nim Game Nim游戏

摘要: 您和您的朋友,两个人一起玩 Nim游戏:桌子上有一堆石头,每次你们轮流拿掉 1 到 3 块石头。 拿掉最后一块石头的人就是胜利者。由您来开局。你们两个都是聪明人,相信都有最佳的游戏策略。 请编写一个函数,来判断您是否可以在给定的石头数量的情况下赢得游戏。比方说,如果堆中有4块石头,那么你永远不会赢得 阅读全文

posted @ 2018-04-09 22:54 lina2014 阅读(186) 评论(0) 推荐(0)

290 Word Pattern 单词模式

摘要: 给定一种 pattern(模式) 和一个字符串 str ,判断 str 是否遵循这种模式。这里的 遵循 指完全匹配,例如在pattern里的每个字母和字符串 str 中的每个非空单词存在双向单映射关系。例如: pattern = "abba", str = "dog cat cat dog", 返回 阅读全文

posted @ 2018-04-09 22:45 lina2014 阅读(571) 评论(0) 推荐(0)

289 Game of Life 生命的游戏

摘要: 假设有一个大小为m*n的板子,有m行,n列个细胞。每个细胞有一个初始的状态,死亡或者存活。每个细胞和它的邻居(垂直,水平以及对角线)。互动规则如下:1.当前细胞存活时,周围低于2个存活细胞时,该细胞死亡。(模拟生物数量过少,导致死亡)2.当前细胞存活时,周围有2个~3个存活细胞时,该细胞保持原状态。 阅读全文

posted @ 2018-04-09 22:28 lina2014 阅读(331) 评论(0) 推荐(0)

287 Find the Duplicate Number 寻找重复数

摘要: 一个长度为 n + 1 的整形数组,其中的数字都在 1 到 n 之间,包括 1 和 n ,可知至少有一个重复的数字存在。假设只有一个数字重复,找出这个重复的数字。注意: 不能更改数组内容(假设数组是只读的)。 只能使用恒定的额外空间,即要求空间复杂度是 O(1) 。 时间复杂度小于 O(n2) 数组 阅读全文

posted @ 2018-04-09 21:59 lina2014 阅读(174) 评论(0) 推荐(0)

283 Move Zeroes 移动零

摘要: 给定一个数组 nums, 编写一个函数将所有 0 移动到它的末尾,同时保持非零元素的相对顺序。例如, 定义 nums = [0, 1, 0, 3, 12],调用函数之后, nums 应为 [1, 3, 12, 0, 0]。注意事项: 必须在原数组上操作,不要为一个新数组分配额外空间。 尽量减少操作总 阅读全文

posted @ 2018-04-09 20:54 lina2014 阅读(111) 评论(0) 推荐(0)

282 Expression Add Operators 给表达式添加运算符

摘要: 给定一个仅包含0-9的字符串和一个目标值,返回在数字之间添加了二元运算符(不是一元的) +、-或*之后所有能得到目标值的情况。例如:"123", 6 -> ["1+2+3", "1*2*3"] "232", 8 -> ["2*3+2", "2+3*2"]"105", 5 -> ["1*0+5","1 阅读全文

posted @ 2018-04-09 19:01 lina2014 阅读(393) 评论(0) 推荐(0)

279 Perfect Squares 完美平方数

摘要: 给定正整数 n,找到若干个完全平方数(比如 1, 4, 9, 16, ...) 使得他们的和等于 n。你需要让平方数的个数最少。比如 n = 12,返回 3 ,因为 12 = 4 + 4 + 4 ; 给定 n = 13,返回 2 ,因为 13 = 4 + 9。 详见:https://leetcode 阅读全文

posted @ 2018-04-09 18:52 lina2014 阅读(570) 评论(0) 推荐(0)

278 First Bad Version 第一个错误的版本

摘要: 你是产品经理,目前正在领导一个团队开发一个新产品。不幸的是,您的产品的最新版本没有通过质量检查。由于每个版本都是基于之前的版本开发的,所以错误版本之后的所有版本都是不好的。假设你有 n 个版本 [1, 2, ..., n],你想找出第一个错误的版本,导致下面所有的错误。你可以通过 bool isBa 阅读全文

posted @ 2018-04-09 18:00 lina2014 阅读(156) 评论(0) 推荐(0)

275 H-Index II H指数 II

摘要: 这是 H指数 进阶问题:如果citations 是升序的会怎样?你可以优化你的算法吗? 详见:https://leetcode.com/problems/h-index-ii/description/ Java实现: C++实现: 参考:https://www.cnblogs.com/grandya 阅读全文

posted @ 2018-04-09 17:34 lina2014 阅读(123) 评论(0) 推荐(0)

274 H-Index H指数

摘要: 给定一位研究者的论文被引用次数的数组(被引用次数是非负整数)。写一个方法计算出研究者的H指数。H-index定义: “一位科学家有指数 h 是指他(她)的 N 篇论文中至多有 h 篇论文,分别被引用了至少 h 次,其余的 N - h 篇论文每篇被引用次数不多于 h 次。"例如,给定 citation 阅读全文

posted @ 2018-04-09 17:25 lina2014 阅读(312) 评论(0) 推荐(0)

273 Integer to English Words 整数转换英文表示

摘要: 将非负整数转换为其对应的英文表示,给定的输入是保证小于 231 - 1 的。示例:123 -> "One Hundred Twenty Three"12345 -> "Twelve Thousand Three Hundred Forty Five"1234567 -> "One Million T 阅读全文

posted @ 2018-04-09 17:12 lina2014 阅读(273) 评论(0) 推荐(0)

268 Missing Number 缺失的数字

摘要: 给出一个包含 0, 1, 2, ..., n 中 n 个数的序列,找出 0 .. n 中没有出现在序列中的那个数。案例 1输入: [3,0,1]输出: 2案例 2输入: [9,6,4,2,3,5,7,0,1]输出: 8注意事项:您的算法应该以线性复杂度运行。你能否仅使用恒定的额外空间复杂度来实现它? 阅读全文

posted @ 2018-04-09 17:03 lina2014 阅读(149) 评论(0) 推荐(0)

264 Ugly Number II 丑数 II

摘要: 编写程序找第 n 个丑数。丑数就是只包含质因子 2, 3, 5 的正整数。例如, 1, 2, 3, 4, 5, 6, 8, 9, 10, 12 就是前10个丑数。注意:1. 1 一般也被当做丑数2. n不超过1690 详见:https://leetcode.com/problems/ugly-num 阅读全文

posted @ 2018-04-09 16:47 lina2014 阅读(157) 评论(0) 推荐(0)

263 Ugly Number 丑数

摘要: 编写程序判断给定的数是否为丑数。丑数就是只包含质因子 2, 3, 5 的正整数。例如, 6, 8 是丑数,而 14 不是,因为它包含了另外一个质因子 7。注意: 1 也可以被当做丑数。 输入不会超过32位整数的范围。详见:https://leetcode.com/problems/ugly-numb 阅读全文

posted @ 2018-04-09 16:32 lina2014 阅读(159) 评论(0) 推荐(0)

260 Single Number III 数组中除了两个数外,其他的数都出现了两次,找出这两个只出现一次的数

摘要: 给定一个整数数组 nums,其中恰好有两个元素只出现一次,其他所有元素均出现两次。 找出只出现一次的那两个元素。示例:给定 nums = [1, 2, 1, 3, 2, 5], 返回 [3, 5].注意: 结果的顺序并不重要,对于上面的例子 [5, 3] 也是正确答案。 你的算法应该具有线性复杂度, 阅读全文

posted @ 2018-04-09 16:25 lina2014 阅读(151) 评论(0) 推荐(0)

258 Add Digits 各位相加

摘要: 给一个非负整数 num,反复添加所有的数字,直到结果只有一个数字。例如:设定 num = 38,过程就像: 3 + 8 = 11, 1 + 1 = 2。 由于 2 只有1个数字,所以返回它。进阶:你可以不用任何的循环或者递归算法,在 O(1) 的时间内解决这个问题么? 详见:https://leet 阅读全文

posted @ 2018-04-09 16:16 lina2014 阅读(107) 评论(0) 推荐(0)

257 Binary Tree Paths 二叉树的所有路径

摘要: 给定一个二叉树,返回从根节点到叶节点的所有路径。例如,给定以下二叉树: 1 / \2 3 \ 5所有根到叶路径是:["1->2->5", "1->3"] 详见:https://leetcode.com/problems/binary-tree-paths/description/ Java实现: C 阅读全文

posted @ 2018-04-09 16:07 lina2014 阅读(128) 评论(0) 推荐(0)

242 Valid Anagram 有效的字母异位词

摘要: 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。例如,s = "anagram",t = "nagaram",返回 trues = "rat",t = "car",返回 false注意:假定字符串只包含小写字母。提升难度:输入的字符串包含 unicode 字符怎么 阅读全文

posted @ 2018-04-09 15:53 lina2014 阅读(136) 评论(0) 推荐(0)

241 Different Ways to Add Parentheses

摘要: Given a string of numbers and operators, return all possible results from computing all the different possible ways to group numbers and operators. Th 阅读全文

posted @ 2018-04-09 15:42 lina2014 阅读(124) 评论(0) 推荐(0)

240 Search a 2D Matrix II 搜索二维矩阵 II

摘要: 编写一个高效的算法来搜索 m x n 矩阵中的一个目标值。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。例如,考虑下面的矩阵:[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14 阅读全文

posted @ 2018-04-09 15:23 lina2014 阅读(150) 评论(0) 推荐(0)

239 Sliding Window Maximum 滑动窗口最大值

摘要: 给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口 k 内的数字。滑动窗口每次只向右移动一位。例如,给定 nums = [1,3,-1,-3,5,3,6,7],和 k = 3 。窗口位置 最大值 [1 3 -1] -3 5 3 6 7 3 1 阅读全文

posted @ 2018-04-09 15:16 lina2014 阅读(191) 评论(0) 推荐(0)

238 Product of Array Except Self 除自身以外数组的乘积

摘要: 一个长度为 n 的整形数组nums,其中 n > 1,返回一个数组 output ,其中 output[i] 等于nums中除nums[i]以外所有元素的乘积。不用除法 且在O(n)内解决这个问题。例如,输入 [1,2,3,4],返回 [24,12,8,6]。进阶:你可以在常数空间复杂度内解决这个问 阅读全文

posted @ 2018-04-09 15:04 lina2014 阅读(139) 评论(0) 推荐(0)

237 Delete Node in a Linked List 删除链表的结点

摘要: 编写一个函数,在给定单链表一个结点(非尾结点)的情况下,删除该结点。 假设该链表为1 -> 2 -> 3 -> 4 并且给定你链表中第三个值为3的节点,在调用你的函数后,该链表应变为1 -> 2 -> 4。 详见:https://leetcode.com/problems/delete-node-i 阅读全文

posted @ 2018-04-09 14:08 lina2014 阅读(133) 评论(0) 推荐(0)

236 Lowest Common Ancestor of a Binary Tree 二叉树的最近公共祖先

摘要: 给定一棵二叉树, 找到该树中两个指定节点的最近公共祖先。 详见:https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-tree/description/ Java实现: C++实现: 参考:https://www.cnblo 阅读全文

posted @ 2018-04-09 13:49 lina2014 阅读(124) 评论(0) 推荐(0)

235 Lowest Common Ancestor of a Binary Search Tree 二叉搜索树的最近公共祖先

摘要: 给定一棵二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 详见:https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-search-tree/description/ Java实现: 方法一: 方法二: C++实现: 方 阅读全文

posted @ 2018-04-09 13:44 lina2014 阅读(97) 评论(0) 推荐(0)

234 Palindrome Linked List 回文链表

摘要: 请检查一个链表是否为回文链表。 进阶:你能在 O(n) 的时间和 O(1) 的额外空间中做到吗? 详见:https://leetcode.com/problems/palindrome-linked-list/description/ Java实现: 方法一: 方法二: C++实现: 方法一: 方法 阅读全文

posted @ 2018-04-09 13:35 lina2014 阅读(129) 评论(0) 推荐(0)

233 Number of Digit One 数字1的个数

摘要: 给定一个整数 n,计算所有小于等于 n 的非负数中数字1出现的个数。 例如: 给定 n = 13, 返回 6,因为数字1出现在下数中出现:1,10,11,12,13。 详见:https://leetcode.com/problems/number-of-digit-one/description/ 阅读全文

posted @ 2018-04-09 12:16 lina2014 阅读(130) 评论(0) 推荐(0)

232 Implement Queue using Stacks 用栈来实现队列

摘要: 使用栈来实现队列的如下操作: push(x) -- 将一个元素放入队列的尾部。pop() -- 从队列首部移除元素。peek() -- 返回队列首部的元素。empty() -- 返回队列是否为空。注意: 你只能使用标准的栈操作-- 也就是只有push to top, peek/pop from to 阅读全文

posted @ 2018-04-09 12:06 lina2014 阅读(111) 评论(0) 推荐(0)

231 Power of Two 2的幂

摘要: 给定一个整数,写一个函数来判断它是否是2的幂。 详见:https://leetcode.com/problems/power-of-two/description/ Java实现: C++实现: 阅读全文

posted @ 2018-04-09 12:02 lina2014 阅读(95) 评论(0) 推荐(0)

230 Kth Smallest Element in a BST 二叉搜索树中第K小的元素

摘要: 给定一个二叉搜索树,编写一个函数kthSmallest来查找其中第k个最小的元素。 注意:你可以假设k总是有效的,1≤ k ≤二叉搜索树元素个数。 进阶:如果经常修改二叉搜索树(插入/删除操作)并且你需要频繁地找到第k小值呢? 你将如何优化kthSmallest函数? 详见:https://leet 阅读全文

posted @ 2018-04-09 11:59 lina2014 阅读(182) 评论(0) 推荐(0)

229 Majority Element II 求众数 II

摘要: 给定一个大小为 n 的数组,找出其中所有出现超过 ⌊ n/3 ⌋ 次的元素。 你的算法应该在O(1)空间中以线性时间运行。 详见:https://leetcode.com/problems/majority-element-ii/description/ 摩尔投票法 Moore Voting Jav 阅读全文

posted @ 2018-04-09 11:43 lina2014 阅读(125) 评论(0) 推荐(0)

228 Summary Ranges 汇总区间

摘要: 给定一个无重复元素的有序整数数组,返回数组中区间范围的汇总。 示例 1: 输入: [0,1,2,4,5,7]输出: ["0->2","4->5","7"]示例 2: 输入: [0,2,3,4,6,8,9]输出: ["0","2->4","6","8->9"] 详见:https://leetcode. 阅读全文

posted @ 2018-04-09 11:26 lina2014 阅读(192) 评论(0) 推荐(0)

227 Basic Calculator II 基本计算器II

摘要: 实现一个基本的计算器来计算一个简单的字符串表达式。 字符串表达式仅包含非负整数,+, - ,*,/四种运算符和空格 。 整数除法仅保留整数部分。 你可以假定所给定的表达式总是有效的。 一些例子: "3+2*2" = 7" 3/2 " = 1" 3+5 / 2 " = 5注意: 不要使用eval 内置 阅读全文

posted @ 2018-04-09 11:15 lina2014 阅读(167) 评论(0) 推荐(0)

226 Invert Binary Tree 翻转二叉树

摘要: 翻转一棵二叉树。 4 / \ 2 7 / \ / \1 3 6 9转换为: 4 / \ 7 2 / \ / \9 6 3 1 详见:https://leetcode.com/problems/invert-binary-tree/ Java实现: 递归实现: 迭代实现: C++实现: 方法一: 方法 阅读全文

posted @ 2018-04-09 10:59 lina2014 阅读(115) 评论(0) 推荐(0)

225 Implement Stack using Queues 队列实现栈

摘要: Implement the following operations of a stack using queues. push(x) -- Push element x onto stack.pop() -- Removes the element on top of the stack.top( 阅读全文

posted @ 2018-04-09 10:36 lina2014 阅读(128) 评论(0) 推荐(0)

224 Basic Calculator 基本计算器

摘要: 实现一个基本的计算器来计算一个简单的字符串表达式。 字符串表达式可以包含左括号 ( ,右括号),加号+ ,减号 -,非负整数和空格 。 假定所给的表达式语句总是正确有效的。 例如: "1 + 1" = 2" 2-1 + 2 " = 3"(1+(4+5+2)-3)+(6+8)" = 23注意:不要使用 阅读全文

posted @ 2018-04-09 10:21 lina2014 阅读(139) 评论(0) 推荐(0)

223 Rectangle Area 矩形面积

摘要: 在二维平面上计算出两个由直线构成的矩形叠加覆盖后的面积。 假设面积不会超出int的范围。 详见:https://leetcode.com/problems/rectangle-area/description/ Java实现: C++实现: 参考:https://www.cnblogs.com/gr 阅读全文

posted @ 2018-04-09 10:12 lina2014 阅读(144) 评论(0) 推荐(0)

导航