08 2018 档案

摘要:和谐数组是指一个数组里元素的最大值和最小值之间的差别正好是1。 现在,给定一个整数数组,你需要在所有可能的子序列中找到最长的和谐子序列的长度。 示例 1: 输入: [1,3,2,2,5,2,3,7] 输出: 5 原因: 最长的和谐数组是:[3,2,2,2,3]. 说明: 输入的数组长度最大不超过20 阅读全文
posted @ 2018-08-30 23:11 丁壮 阅读(180) 评论(0) 推荐(0) 编辑
摘要:假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺寸 sj 。如果 sj >= gi ,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你 阅读全文
posted @ 2018-08-29 23:54 丁壮 阅读(227) 评论(0) 推荐(0) 编辑
摘要:假设Andy和Doris想在晚餐时选择一家餐厅,并且他们都有一个表示最喜爱餐厅的列表,每个餐厅的名字用字符串表示。 你需要帮助他们用最少的索引和找出他们共同喜爱的餐厅。 如果答案不止一个,则输出所有答案并且不考虑顺序。 你可以假设总是存在一个答案。 示例 1: 输入: ["Shogun", "Tap 阅读全文
posted @ 2018-08-29 23:54 丁壮 阅读(306) 评论(0) 推荐(0) 编辑
摘要:给定一个长度为 n 的非空整数数组,找到让数组所有元素相等的最小移动次数。每次移动可以使 n - 1 个元素增加 1。 示例: 输入: [1,2,3] 输出: 3 解释: 只需要3次移动(注意每次移动会增加两个元素的值): [1,2,3] => [2,3,3] => [3,4,3] => [4,4, 阅读全文
posted @ 2018-08-29 22:52 丁壮 阅读(283) 评论(0) 推荐(0) 编辑
摘要:给定一个范围在 1 ≤ a[i] ≤ n ( n = 数组大小 ) 的 整型数组,数组中的元素一些出现了两次,另一些只出现一次。 找到所有在 [1, n] 范围之间没有出现在数组中的数字。 您能在不使用额外空间且时间复杂度为O(n)的情况下完成这个任务吗? 你可以假定返回的数组不算在额外空间内。 示 阅读全文
posted @ 2018-08-29 22:51 丁壮 阅读(297) 评论(0) 推荐(0) 编辑
摘要:给定平面上 n 对不同的点,“回旋镖” 是由点表示的元组 (i, j, k) ,其中 i 和 j 之间的距离和 i 和 k 之间的距离相等(需要考虑元组的顺序)。 找到所有回旋镖的数量。你可以假设 n 最大为 500,所有点的坐标在闭区间 [-10000, 10000] 中。 示例: 输入: [[0 阅读全文
posted @ 2018-08-29 22:50 丁壮 阅读(291) 评论(0) 推荐(0) 编辑
摘要:给定一组字符,使用原地算法将其压缩。 压缩后的长度必须始终小于或等于原数组长度。 数组的每个元素应该是长度为1 的字符(不是 int 整数类型)。 在完成原地修改输入数组后,返回数组的新长度。 进阶: 你能否仅使用O(1) 空间解决问题? 示例 1: 输入: ["a","a","b","b","c" 阅读全文
posted @ 2018-08-28 23:16 丁壮 阅读(425) 评论(0) 推荐(0) 编辑
摘要:给定两个字符串形式的非负整数 num1 和num2 ,计算它们的和。 注意: num1 和num2 的长度都小于 5100. num1 和num2 都只包含数字 0-9. num1 和num2 都不包含任何前导零。 你不能使用任何內建 BigInteger 库, 也不能直接将输入的字符串转换为整数形 阅读全文
posted @ 2018-08-27 23:36 丁壮 阅读(192) 评论(0) 推荐(0) 编辑
摘要:给定一个非空数组,返回此数组中第三大的数。如果不存在,则返回数组中最大的数。要求算法时间复杂度必须是O(n)。 示例 1: 输入: [3, 2, 1] 输出: 1 解释: 第三大的数是 1. 示例 2: 输入: [1, 2] 输出: 2 解释: 第三大的数不存在, 所以返回最大的数 2 . 示例 3 阅读全文
posted @ 2018-08-27 23:35 丁壮 阅读(193) 评论(0) 推荐(0) 编辑
摘要:写一个程序,输出从 1 到 n 数字的字符串表示。 1. 如果 n 是3的倍数,输出“Fizz”; 2. 如果 n 是5的倍数,输出“Buzz”; 3.如果 n 同时是3和5的倍数,输出 “FizzBuzz”。 示例: n = 15, 返回: [ "1", "2", "Fizz", "4", "Bu 阅读全文
posted @ 2018-08-27 23:34 丁壮 阅读(126) 评论(0) 推荐(0) 编辑
摘要:给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。 在构造过程中,请注意区分大小写。比如 "Aa" 不能当做一个回文字符串。 注意: 假设字符串的长度不会超过 1010。 示例 1: 输入: "abccccdd" 输出: 7 解释: 我们可以构造的最长的回文串是"dcca 阅读全文
posted @ 2018-08-27 23:33 丁壮 阅读(156) 评论(0) 推荐(0) 编辑
摘要:计算给定二叉树的所有左叶子之和。 示例: 阅读全文
posted @ 2018-08-27 23:32 丁壮 阅读(163) 评论(0) 推荐(0) 编辑
摘要:给定一个整数,编写一个算法将这个数转换为十六进制数。对于负整数,我们通常使用 补码运算 方法。 注意: 十六进制中所有字母(a-f)都必须是小写。 十六进制字符串中不能包含多余的前导零。如果要转化的数为0,那么以单个字符'0'来表示;对于其他情况,十六进制字符串中的第一个字符将不会是0字符。 给定的 阅读全文
posted @ 2018-08-27 23:32 丁壮 阅读(412) 评论(0) 推荐(0) 编辑
摘要:二进制手表顶部有 4 个 LED 代表小时(0-11),底部的 6 个 LED 代表分钟(0-59)。 每个 LED 代表一个 0 或 1,最低位在右侧。 例如,上面的二进制手表读取 “3:25”。 给定一个非负整数 n 代表当前 LED 亮着的数量,返回所有可能的时间。 案例: 输入: n = 1 阅读全文
posted @ 2018-08-27 23:31 丁壮 阅读(262) 评论(0) 推荐(0) 编辑
摘要:在无限的整数序列 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ...中找到第 n 个数字。 注意: n 是正数且在32为整形范围内 ( n < 231)。 示例 1: 输入: 3 输出: 3 示例 2: 输入: 11 输出: 0 说明: 第11个数字在序列 1, 2, 3, 阅读全文
posted @ 2018-08-27 23:30 丁壮 阅读(284) 评论(0) 推荐(0) 编辑
摘要:给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。 案例: 阅读全文
posted @ 2018-08-27 23:29 丁壮 阅读(418) 评论(0) 推荐(0) 编辑
摘要:给定两个字符串 s 和 t,它们只包含小写字母。 字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。 请找出在 t 中被添加的字母。 示例: 输入: s = "abcd" t = "abcde" 输出: e 解释: 'e' 是那个被添加的字母。 class Solution(objec 阅读全文
posted @ 2018-08-27 23:29 丁壮 阅读(95) 评论(0) 推荐(0) 编辑
摘要:给定一个赎金信 (ransom) 字符串和一个杂志(magazine)字符串,判断第一个字符串ransom能不能由第二个字符串magazines里面的字符构成。如果可以构成,返回 true ;否则返回 false。 (题目说明:为了不暴露赎金信字迹,要从杂志上搜索各个需要的字母,组成单词来表达意思。 阅读全文
posted @ 2018-08-26 00:08 丁壮 阅读(185) 评论(0) 推荐(0) 编辑
摘要:我们正在玩一个猜数字游戏。 游戏规则如下: 我从 1 到 n 选择一个数字。 你需要猜我选择了哪个数字。 每次你猜错了,我会告诉你这个数字是大了还是小了。 你调用一个预先定义好的接口 guess(int num),它会返回 3 个可能的结果(-1,1 或 0): -1 : 我的数字比较小 1 : 我 阅读全文
posted @ 2018-08-25 23:55 丁壮 阅读(383) 评论(0) 推荐(0) 编辑
摘要:不使用运算符 + 和-,计算两整数a 、b之和。 示例: 若 a = 1 ,b = 2,返回 3。 class Solution: def getSum(self, a, b): """ :type a: int :type b: int :rtype: int """ # return sum([ 阅读全文
posted @ 2018-08-25 02:05 丁壮 阅读(231) 评论(0) 推荐(0) 编辑
摘要:给定一个正整数 num,编写一个函数,如果 num 是一个完全平方数,则返回 True,否则返回 False。 注意:不要使用任何内置的库函数,如 sqrt。 示例 1: 示例 2: 阅读全文
posted @ 2018-08-25 01:45 丁壮 阅读(453) 评论(2) 推荐(0) 编辑
摘要:给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2,2] 示例 2: 输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出: [4,9] 说明: 输出结果中每个元素出现的次 阅读全文
posted @ 2018-08-25 01:26 丁壮 阅读(330) 评论(0) 推荐(0) 编辑
摘要:给定两个数组,编写一个函数来计算它们的交集。 示例 1: 输入: nums1 = [1,2,2,1], nums2 = [2,2] 输出: [2] 示例 2: 输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4] 输出: [9,4] 说明: 输出结果中的每个元素一定是唯一 阅读全文
posted @ 2018-08-25 00:57 丁壮 阅读(147) 评论(0) 推荐(0) 编辑
摘要:编写一个函数,以字符串作为输入,反转该字符串中的元音字母。 示例 1: 输入: "hello" 输出: "holle" 示例 2: 输入: "leetcode" 输出: "leotcede" 说明: 元音字母不包含字母"y"。 class Solution: def reverseVowels(se 阅读全文
posted @ 2018-08-25 00:52 丁壮 阅读(306) 评论(0) 推荐(0) 编辑
摘要:编写一个函数,其作用是将输入的字符串反转过来。 示例 1: 输入: "hello" 输出: "olleh" 示例 2: 输入: "A man, a plan, a canal: Panama" 输出: "amanaP :lanac a ,nalp a ,nam A" class Solution: 阅读全文
posted @ 2018-08-24 23:21 丁壮 阅读(213) 评论(0) 推荐(0) 编辑
摘要:给定一个整数 (32 位有符号整数),请编写一个函数来判断它是否是 4 的幂次方。 示例 1: 输入: 16 输出: true 示例 2: 输入: 5 输出: false 进阶: 你能不使用循环或者递归来完成本题吗? class Solution: def isPowerOfFour(self, n 阅读全文
posted @ 2018-08-24 23:20 丁壮 阅读(243) 评论(0) 推荐(0) 编辑
摘要:给定一个整数,写一个函数来判断它是否是 3 的幂次方。 示例 1: 输入: 27 输出: true 示例 2: 输入: 0 输出: false 示例 3: 输入: 9 输出: true 示例 4: 输入: 45 输出: false 进阶: 你能不使用循环或者递归来完成本题吗? 给定一个整数,写一个函 阅读全文
posted @ 2018-08-24 23:19 丁壮 阅读(196) 评论(0) 推荐(0) 编辑
摘要:给定一个整数数组 nums,求出数组从索引 i 到 j (i ≤ j) 范围内元素的总和,包含 i, j 两点。 示例: 给定 nums = [-2, 0, 3, -5, 2, -1],求和函数为 sumRange() sumRange(0, 2) -> 1 sumRange(2, 5) -> -1 阅读全文
posted @ 2018-08-24 23:18 丁壮 阅读(583) 评论(0) 推荐(0) 编辑
摘要:你和你的朋友,两个人一起玩 Nim游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。 你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。 示例: 输入: 4 输出: false 解释: 如果堆中有 阅读全文
posted @ 2018-08-24 23:17 丁壮 阅读(216) 评论(0) 推荐(0) 编辑
摘要:给定一种 pattern(模式) 和一个字符串 str ,判断 str 是否遵循相同的模式。 这里的遵循指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应模式。 示例1: 输入: pattern = "abba", str = "dog cat 阅读全文
posted @ 2018-08-24 23:16 丁壮 阅读(223) 评论(0) 推荐(0) 编辑
摘要:你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。 假设你有 n 个版本 [1, 2, ..., n],你想找出导致之后所有版本出错的第一个错误的版本。 你可以通过调用 bool 阅读全文
posted @ 2018-08-24 23:15 丁壮 阅读(138) 评论(0) 推荐(0) 编辑
摘要:给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 说明: 必须在原数组上操作,不能拷贝额外的数组。 尽量减少操作次数。 class Solution: def moveZeroe 阅读全文
posted @ 2018-08-24 23:15 丁壮 阅读(124) 评论(0) 推荐(0) 编辑
摘要:给定一个包含 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-08-24 23:14 丁壮 阅读(147) 评论(0) 推荐(0) 编辑
摘要:编写一个程序判断给定的数是否为丑数。 丑数就是只包含质因数 2, 3, 5 的正整数。 示例 1: 示例 2: 示例 3: 说明: 阅读全文
posted @ 2018-08-24 23:13 丁壮 阅读(175) 评论(0) 推荐(0) 编辑
摘要:给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。 示例: 阅读全文
posted @ 2018-08-24 23:12 丁壮 阅读(158) 评论(0) 推荐(0) 编辑
摘要:给定一个二叉树,返回所有从根节点到叶子节点的路径。 说明: 叶子节点是指没有子节点的节点。 示例: 输入: 1 / \ 2 3 \ 5 输出: ["1->2->5", "1->3"] 解释: 所有根节点到叶子节点的路径为: 1->2->5, 1->3 给定一个二叉树,返回所有从根节点到叶子节点的路径 阅读全文
posted @ 2018-08-24 23:11 丁壮 阅读(356) 评论(0) 推荐(0) 编辑
摘要:给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的一个字母异位词。 示例 1: 输入: s = "anagram", t = "nagaram" 输出: true 示例 2: 输入: s = "rat", t = "car" 输出: false 说明: 你可以假设字符串只包含小写字 阅读全文
posted @ 2018-08-24 02:07 丁壮 阅读(309) 评论(0) 推荐(0) 编辑
摘要:请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。 现有一个链表 -- head = [4,5,1,9],它可以表示为: 4 -> 5 -> 1 -> 9 示例 1: 输入: head = [4,5,1,9], node = 5 输出: [4,1,9] 解释: 阅读全文
posted @ 2018-08-24 02:02 丁壮 阅读(302) 评论(0) 推荐(0) 编辑
摘要:给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 例如,给定如下二叉搜索树: root = [6, 阅读全文
posted @ 2018-08-24 01:40 丁壮 阅读(229) 评论(0) 推荐(0) 编辑
摘要:请判断一个链表是否为回文链表。 示例 1: 输入: 1->2 输出: false 示例 2: 输入: 1->2->2->1 输出: true 进阶: 你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题? # Definition for singly-linked list. # cla 阅读全文
posted @ 2018-08-24 01:27 丁壮 阅读(186) 评论(0) 推荐(0) 编辑
摘要:使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部。 pop() -- 从队列首部移除元素。 peek() -- 返回队列首部的元素。 empty() -- 返回队列是否为空。 示例: MyQueue queue = new MyQueue(); queue.push(1); 阅读全文
posted @ 2018-08-24 00:31 丁壮 阅读(303) 评论(0) 推荐(0) 编辑
摘要:给定一个整数n,判断它是否为2的次方幂。 方法:2,4,8都是2的n次幂 任何整数乘以2,都相当于向左移动了一位,而2的0次幂为1,所以2的n次幂就是1向左移动n位。这样,2的幂的特征就是二进制表示只有最高位为1,其他位均为0。二进制标下形式为: 10 100 1000 减1后与自身进行按位与,如果 阅读全文
posted @ 2018-08-24 00:23 丁壮 阅读(294) 评论(0) 推荐(1) 编辑
摘要:翻转一棵二叉树。 示例: 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 输出: 4 / \ 7 2 / \ / \ 9 6 3 1 备注: 这个问题是受到 Max Howell 的 原问题 启发的 : 谷歌:我们90%的工程师使用您编写的软件(Homebrew),但是您却无法在面试时在 阅读全文
posted @ 2018-08-23 19:25 丁壮 阅读(234) 评论(0) 推荐(0) 编辑
摘要:使用队列实现栈的下列操作: push(x) -- 元素 x 入栈 pop() -- 移除栈顶元素 top() -- 获取栈顶元素 empty() -- 返回栈是否为空 注意: 你只能使用队列的基本操作-- 也就是 push to back, peek/pop from front, size, 和  阅读全文
posted @ 2018-08-23 19:07 丁壮 阅读(349) 评论(0) 推荐(0) 编辑
摘要:给定一个整数数组,判断是否存在重复元素。 如果任何值在数组中出现至少两次,函数返回 true。如果数组中每个元素都不相同,则返回 false。 示例 1: 输入: [1,2,3,1] 输出: true 示例 2: 输入: [1,2,3,4] 输出: false 示例 3: 输入: [1,1,1,3, 阅读全文
posted @ 2018-08-23 00:53 丁壮 阅读(231) 评论(0) 推荐(0) 编辑
摘要:反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 进阶: 你可以迭代或递归地反转链表。你能否用两种方法解决这道题? 反转一个单链表。 示例: 进阶: 你可以迭代或递归地反转链表。你能否用两种方法解决这道题? /** * Defi 阅读全文
posted @ 2018-08-23 00:48 丁壮 阅读(227) 评论(0) 推荐(0) 编辑
摘要:给定两个字符串 s 和 t,判断它们是否是同构的。 如果 s 中的字符可以被替换得到 t ,那么这两个字符串是同构的。 所有出现的字符都必须用另一个字符替换,同时保留字符的顺序。两个字符不能映射到同一个字符上,但字符可以映射自己本身。 示例 1: 输入: s = "egg", t = "add" 输 阅读全文
posted @ 2018-08-23 00:21 丁壮 阅读(274) 评论(0) 推荐(0) 编辑
摘要:统计所有小于非负整数 n 的质数的数量。 示例: 输入: 10 输出: 4 解释: 小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。 class Solution: def countPrimes(self, n): """ :type n: int :rtype: int "" 阅读全文
posted @ 2018-08-22 23:20 丁壮 阅读(316) 评论(0) 推荐(0) 编辑
摘要:python的format函数通过{}来格式化字符串 如果需要在文本中包含{}字符,这样使用就会报错: 需要通过{{}},也就是double的{}来进行转义 参考链接: https://docs.python.org/3/library/string.html#formatstrings 阅读全文
posted @ 2018-08-22 16:48 丁壮 阅读(365) 评论(0) 推荐(0) 编辑
摘要:删除链表中等于给定值 val 的所有节点。 示例: 输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4->5 /** * Definition for singly-linked list. * struct ListNode { * int val; * 阅读全文
posted @ 2018-08-22 01:50 丁壮 阅读(258) 评论(0) 推荐(0) 编辑
摘要:编写一个算法来判断一个数是不是“快乐数”。 一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。 阅读全文
posted @ 2018-08-22 00:54 丁壮 阅读(241) 评论(0) 推荐(0) 编辑
摘要:你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数数组,计算你在不触动警报装置的情况下,能够偷窃到的最高金额。 示例 1: 输 阅读全文
posted @ 2018-08-21 02:14 丁壮 阅读(215) 评论(0) 推荐(0) 编辑
摘要:编写一个 SQL 查询,来删除 Person 表中所有重复的电子邮箱,重复的邮箱里只保留 Id 最小 的那个。 + + + | Id | Email | + + + | 1 | john@example.com | | 2 | bob@example.com | | 3 | john@example 阅读全文
posted @ 2018-08-21 01:47 丁壮 阅读(188) 评论(0) 推荐(0) 编辑
摘要:给定一个文本文件 file.txt,请只打印这个文件中的第十行。 示例: 假设 file.txt 有如下内容: Line 1 Line 2 Line 3 Line 4 Line 5 Line 6 Line 7 Line 8 Line 9 Line 10 你的脚本应当显示第十行: Line 10 说明 阅读全文
posted @ 2018-08-21 01:35 丁壮 阅读(239) 评论(0) 推荐(0) 编辑
摘要:给定一个包含电话号码列表(一行一个电话号码)的文本文件 file.txt,写一个 bash 脚本输出所有有效的电话号码。 你可以假设一个有效的电话号码必须满足以下两种格式: (xxx) xxx-xxxx 或 xxx-xxx-xxxx。(x 表示一个数字) 你也可以假设每行前后没有多余的空格字符。 示 阅读全文
posted @ 2018-08-21 01:28 丁壮 阅读(308) 评论(0) 推荐(0) 编辑
摘要:编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量)。 示例 : 输入: 11 输出: 3 解释: 整数 11 的二进制表示为 00000000000000000000000000001011 示例 2: 输入: 128 输出: 1 解释: 整数 1 阅读全文
posted @ 2018-08-21 01:09 丁壮 阅读(129) 评论(0) 推荐(0) 编辑
摘要:颠倒给定的 32 位无符号整数的二进制位。 示例: 输入: 43261596 输出: 964176192 解释: 43261596 的二进制表示形式为 00000010100101000001111010011100 , 返回 964176192,其二进制表示形式为 0011100101111000 阅读全文
posted @ 2018-08-21 01:03 丁壮 阅读(141) 评论(0) 推荐(0) 编辑
摘要:给定一个数组,将数组中的元素向右移动 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] 向右旋转 阅读全文
posted @ 2018-08-21 00:02 丁壮 阅读(105) 评论(0) 推荐(0) 编辑
摘要:给定一个整数 n,返回 n! 结果尾数中零的数量。 示例 1: 输入: 3 输出: 0 解释: 3! = 6, 尾数中没有零。 示例 2: 输入: 5 输出: 1 解释: 5! = 120, 尾数中有 1 个零. 说明: 你算法的时间复杂度应为 O(log n) 。 class Solution(o 阅读全文
posted @ 2018-08-21 00:00 丁壮 阅读(96) 评论(0) 推荐(0) 编辑
摘要:给定一个Excel表格中的列名称,返回其相应的列序号。 例如, 示例 1: 示例 2: 示例 3: 阅读全文
posted @ 2018-08-20 23:59 丁壮 阅读(177) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2018-08-17 15:54 丁壮 阅读(5) 评论(0) 推荐(0) 编辑
摘要:给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在众数。 示例 1: 输入: [3,2,3] 输出: 3 示例 2: 输入: [2,2,1,1,1,2,2] 输出: 2 class Solution(ob 阅读全文
posted @ 2018-08-17 01:10 丁壮 阅读(230) 评论(0) 推荐(0) 编辑
摘要:给定一个正整数,返回它在 Excel 表中相对应的列名称。 例如, 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB ... 示例 1: 输入: 1 输出: "A" 示例 2: 输入: 28 输出: "AB" 示例 3: 输入: 701 输出: " 阅读全文
posted @ 2018-08-17 00:39 丁壮 阅读(215) 评论(0) 推荐(0) 编辑
摘要:给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。 函数应该返回这两个下标值index1 和 index2,其中 index1 必须小于 index2。 说明: 返回的下标值(index1 和 index2)不是从零开始的。 你可以假设每个输入只对应唯一的答案,而且你不可以重 阅读全文
posted @ 2018-08-17 00:08 丁壮 阅读(196) 评论(0) 推荐(0) 编辑
摘要:编写一个程序,找到两个单链表相交的起始节点。 例如,下面的两个链表: 在节点 c1 开始相交。 注意: 如果两个链表没有交点,返回 null. 在返回结果后,两个链表仍须保持原有的结构。 可假定整个链表结构中没有循环。 程序尽量满足 O(n) 时间复杂度,且仅用 O(1) 内存。 阅读全文
posted @ 2018-08-16 23:44 丁壮 阅读(256) 评论(0) 推荐(0) 编辑
摘要:设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。 push(x) -- 将元素 x 推入栈中。 pop() -- 删除栈顶的元素。 top() -- 获取栈顶元素。 getMin() -- 检索栈中的最小元素。 示例: MinStack minStack = new 阅读全文
posted @ 2018-08-16 22:29 丁壮 阅读(217) 评论(0) 推荐(0) 编辑
摘要:给定一个链表,判断链表中是否有环。 进阶: 你能否不使用额外空间解决此题? 给定一个链表,判断链表中是否有环。 进阶: 你能否不使用额外空间解决此题? 阅读全文
posted @ 2018-08-16 13:18 丁壮 阅读(219) 评论(0) 推荐(0) 编辑
摘要:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 输入: [2,2,1] 输出: 1 示例 2: 输入: [4,1,2,1,2] 输出: 4 def make( 阅读全文
posted @ 2018-08-16 02:12 丁壮 阅读(189) 评论(0) 推荐(0) 编辑
摘要:给定一个字符串,验证它是否是回文串,只考虑字母和数字字符,可以忽略字母的大小写。 说明:本题中,我们将空字符串定义为有效的回文串。 示例 1: 输入: "A man, a plan, a canal: Panama" 输出: true 示例 2: 输入: "race a car" 输出: false 阅读全文
posted @ 2018-08-16 01:50 丁壮 阅读(197) 评论(0) 推荐(0) 编辑
摘要:给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [7,1,5,3,6,4] 输出: 7 解释: 在第 阅读全文
posted @ 2018-08-16 01:23 丁壮 阅读(303) 评论(0) 推荐(0) 编辑
摘要:给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。 注意你不能在买入股票前卖出股票。 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 在第 2 天(股票价格 = 1)的时 阅读全文
posted @ 2018-08-16 00:18 丁壮 阅读(308) 评论(0) 推荐(0) 编辑
摘要:给定一个二叉树,检查它是否是镜像对称的。 例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \ 3 4 4 3 但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3 说明: 如果你可以运用递归和迭代两 阅读全文
posted @ 2018-08-15 23:16 丁壮 阅读(266) 评论(0) 推荐(0) 编辑
摘要:给定两个二叉树,编写一个函数来检验它们是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3] 输出: true 示例 2: 输入: 1 1 / \ 2 2 [1,2], [1,nul 阅读全文
posted @ 2018-08-15 22:39 丁壮 阅读(259) 评论(0) 推荐(0) 编辑
摘要:给定一个二叉树,找出其最小深度。 最小深度是从根节点到最近叶子节点的最短路径上的节点数量。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回它的最小深度 2. 最小深度是从根节点到最近叶子节点的 阅读全文
posted @ 2018-08-15 01:23 丁壮 阅读(225) 评论(0) 推荐(0) 编辑
摘要:给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回它的最大深度 3 。 /** * Definition 阅读全文
posted @ 2018-08-15 00:55 丁壮 阅读(282) 评论(0) 推荐(0) 编辑
摘要:python版本的zabbix_sender: 使用方法: 1、导入 : from zbx_send import info 2、实例化: test=info() 3、支持方法: 添加信息: add_data("主机名",'Key_',"报警内容"),可以添加多次 例: test.add_data( 阅读全文
posted @ 2018-08-14 17:23 丁壮 阅读(1637) 评论(0) 推荐(0) 编辑
摘要:#include /* 二分查找条件: 1、有序序列 2、数据在数组中 */ int baseBinarySearch(int a[],int h,int k) { int low=0; int high=h; int mid =0; int NoFound = -1; while (low a[mid] ) { ... 阅读全文
posted @ 2018-08-13 22:41 丁壮 阅读(339) 评论(0) 推荐(0) 编辑
摘要:centos 7安装yum -y install epel-releaseyum clean allyum makecacheyum -y install salt-minionsed -i 's/#master: salt/master: 10.248.2.18/g' /etc/salt/mini 阅读全文
posted @ 2018-08-13 16:03 丁壮 阅读(178) 评论(0) 推荐(0) 编辑
摘要:给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。 说明: 初始化 nums1 和 nums2 的元素数量分别为 m 和 n。 你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素 阅读全文
posted @ 2018-08-13 00:44 丁壮 阅读(220) 评论(0) 推荐(0) 编辑
摘要:给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。 示例 1: 输入: 1->1->2 输出: 1->2 示例 2: 输入: 1->1->2->3->3 输出: 1->2->3 /** * Definition for singly-linked list. * struct ListN 阅读全文
posted @ 2018-08-12 02:53 丁壮 阅读(214) 评论(0) 推荐(0) 编辑
摘要:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。 1. 1 阶 + 1 阶 2. 2 阶 示例 2: 输入: 3 输出: 3 解 阅读全文
posted @ 2018-08-12 00:52 丁壮 阅读(266) 评论(0) 推荐(0) 编辑
摘要:给定两个二进制字符串,返回他们的和(用二进制表示)。 输入为非空字符串且只包含数字 1 和 0。 示例 1: 输入: a = "11", b = "1" 输出: "100" 示例 2: 输入: a = "1010", b = "1011" 输出: "10101" class Solution: de 阅读全文
posted @ 2018-08-11 02:22 丁壮 阅读(334) 评论(2) 推荐(0) 编辑
摘要:给定一个非负整数组成的非空数组,在该数的基础上加一,返回一个新的数组。 最高位数字存放在数组的首位, 数组中每个元素只存储一个数字。 你可以假设除了整数 0 之外,这个整数不会以零开头。 示例 1: 输入: [1,2,3] 输出: [1,2,4] 解释: 输入数组表示数字 123。 示例 2: 输入 阅读全文
posted @ 2018-08-11 00:18 丁壮 阅读(183) 评论(0) 推荐(0) 编辑
摘要:给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。 如果不存在最后一个单词,请返回 0 。 说明:一个单词是指由字母组成,但不包含任何空格的字符串。 示例: 输入: "Hello World" 输出: 5 给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词 阅读全文
posted @ 2018-08-10 02:13 丁壮 阅读(213) 评论(0) 推荐(0) 编辑
摘要:给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 示例: 输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 class Solution: def maxSubAr 阅读全文
posted @ 2018-08-10 00:52 丁壮 阅读(206) 评论(0) 推荐(0) 编辑
摘要:报数序列是指一个整数序列,按照其中的整数的顺序进行报数,得到下一个数。其前五项如下: 1. 1 2. 11 3. 21 4. 1211 5. 111221 1 被读作 "one 1" ("一个一") , 即 11。 11 被读作 "two 1s" ("两个一"), 即 21。 21 被读作 "one 阅读全文
posted @ 2018-08-09 01:33 丁壮 阅读(557) 评论(0) 推荐(0) 编辑
摘要:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 你可以假设数组中无重复元素。 示例 1: 输入: [1,3,5,6], 5 输出: 2 示例 2: 输入: [1,3,5,6], 2 输出: 1 示例 3: 输入: [1,3,5 阅读全文
posted @ 2018-08-08 01:21 丁壮 阅读(233) 评论(0) 推荐(1) 编辑
摘要:实现 strStr() 函数。 给定一个 haystack 字符串和一个 needle 字符串,在 haystack 字符串中找出 needle 字符串出现的第一个位置 (从0开始)。如果不存在,则返回 -1。 示例 1: 输入: haystack = "hello", needle = "ll" 阅读全文
posted @ 2018-08-08 00:37 丁壮 阅读(298) 评论(0) 推荐(0) 编辑
摘要:给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。 示例 1: 给定 nums = [ 阅读全文
posted @ 2018-08-08 00:10 丁壮 阅读(261) 评论(0) 推荐(0) 编辑
摘要:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前 阅读全文
posted @ 2018-08-07 19:55 丁壮 阅读(342) 评论(2) 推荐(0) 编辑
摘要:将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 class ListNode: def __init__(self, x): self.val = x self.ne 阅读全文
posted @ 2018-08-07 19:20 丁壮 阅读(516) 评论(0) 推荐(0) 编辑
摘要:编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1: 输入: ["flower","flow","flight"] 输出: "fl" 示例 2: 输入: ["dog","racecar","car"] 输出: "" 解释: 输入不存在公共前缀。 说明: 阅读全文
posted @ 2018-08-07 00:25 丁壮 阅读(421) 评论(0) 推荐(0) 编辑
摘要:给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。 示例 1: 输入: "()" 输出: true 示例 2: 输入: "()[]{} 阅读全文
posted @ 2018-08-06 15:51 丁壮 阅读(297) 评论(0) 推荐(0) 编辑
摘要:罗马数字包含以下七种字符:I, V, X, L,C,D 和 M。 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V  阅读全文
posted @ 2018-08-05 21:58 丁壮 阅读(369) 评论(0) 推荐(0) 编辑
摘要:判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 示例 1: 示例 2: 示例 3: 进阶: 你能不将整数转为字符串来解决这个问题吗? 阅读全文
posted @ 2018-08-04 01:19 丁壮 阅读(318) 评论(0) 推荐(0) 编辑
摘要:给定一个 32 位有符号整数,将整数中的数字进行反转。 示例 1: 示例 2: 示例 3: 注意: 假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0。 阅读全文
posted @ 2018-08-04 00:04 丁壮 阅读(166) 评论(0) 推荐(0) 编辑
摘要:给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。 你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。 示例: 阅读全文
posted @ 2018-08-03 23:29 丁壮 阅读(202) 评论(0) 推荐(0) 编辑
摘要:#include #include //提供malloc()原型 #include //提供true false原型 #define MaxSize 10 #define ERROR -1 typedef struct SNode *Stack; typedef int ElementType ; struct SNode { ElementType *Data; //... 阅读全文
posted @ 2018-08-01 23:12 丁壮 阅读(624) 评论(0) 推荐(0) 编辑