![](https://img-blog.csdnimg.cn/20190909213420188.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Lintcode
观月执白
春秋诗礼号儒身
封剑无为求道真
三世菩提修罗命
江湖观月执白人
展开
-
Lintcode: 快乐数
问题:写一个算法来判断一个数是不是"快乐数"。一个数是不是快乐是这么定义的:对于一个正整数,每一次将该数替换为他每个位置上的数字的平方和,然后重复这个过程直到这个数变为1,或是无限循环但始终变不到1。如果可以变为1,那么这个数就是快乐数。样例:例1:输入:19输出:true说明:19是一个快乐的数字 1 ^ 2 + 9 ^ 2 = 82 8 ^...原创 2019-06-26 21:58:03 · 204 阅读 · 0 评论 -
Lintcode: 数组第二大数
问题:在数组中找到第二大的数样例:例1:输入:[1,3,2,4],输出:3。例2:输入:[1,2],输出:1。注意事项你可以假定至少有两个数字python:class Solution: """ @param nums: An integer array @return: The second max number ...原创 2019-06-25 20:05:47 · 296 阅读 · 0 评论 -
Lintcode: 整数排序 II
问题:给一组整数,请将其在原地按照升序排序。使用归并排序,快速排序,堆排序或者任何其他 O(nlogn) 的排序算法。样例:例1:输入:[3,2,1,4,5],输出:[1,2,3,4,5]。例2:输入:[2,3,1],输出:[1,2,3]。python:(不能通过lintcode的测试!!!)class Solution: """ ...原创 2019-06-25 19:35:57 · 228 阅读 · 2 评论 -
Lintcode: 经典二分查找问题
问题:在一个排序数组中找一个数,返回该数出现的任意位置,如果不存在,返回-1。样例:样例 1:输入:nums = [1,2,2,4,5,5], target = 2输出:1 或者 2样例 2:输入:nums = [1,2,2,4,5,5], target = 6输出:-1python :class Solution: """ @p...原创 2019-06-24 20:34:08 · 189 阅读 · 0 评论 -
Lintcode: 余弦相似度
问题:余弦相似性是内积空间的两个矢量之间的相似性的度量,其测量它们之间的角度的余弦。 0° 的余弦为 1,对于任何其他角度,余弦小于 1。Wiki 链接:Cosine Similarity这里给出公式:给你两个相同大小的向量AB,求出他们的余弦相似度。返回2.0000如果余弦相似不合法 (比如 A = [0] B = [0])。样例:样例 1:输入...原创 2019-06-24 18:56:25 · 413 阅读 · 0 评论 -
Lintcode: 不同岛屿的个数II
问题:给定一个0和1的非空的二维数组网格,一个岛是一个1(表示陆地)的组,4个方向(水平或垂直)连接。你可以假设网格的所有四条边都被水包围。计算不同岛屿的数量。当一个岛被认为与另一个岛相同时,它们有相同的形状,或在旋转后的形状相同(90,180,或270度)或翻转(左/右方向或向上/向下方向)。样例:Example 1:Input: [[1,1,0,0,0],[1,0,0,0...原创 2019-06-24 18:16:39 · 850 阅读 · 0 评论 -
Lintcode: 不同岛屿的个数
问题:给定一个由0和1组成的非空的二维网格,一个岛屿是指四个方向(包括横向和纵向)都相连的一组1(1表示陆地)。你可以假设网格的四个边缘都被水包围。找出所有不同的岛屿的个数。如果一个岛屿与另一个岛屿形状相同(不考虑旋转和翻折),我们认为这两个岛屿是相同的。注意:111和 111是不同的岛屿,因为我们不考虑旋转和翻折。样例样例 1:输入: ...原创 2019-06-19 00:10:41 · 550 阅读 · 0 评论 -
Lintcode:岛屿的个数
问题:给一个 01 矩阵,求不同的岛屿的个数。0 代表海,1 代表岛,如果两个 1 相邻,那么这两个 1 属于同一个岛。我们只考虑上下左右为相邻。样例:Example 1:Input:[ [1,1,0,0,0], [0,1,0,0,1], [0,0,0,1,1], [0,0,0,0,0], [0,0,0,0,1]]Output:3Examp...原创 2019-06-18 00:10:34 · 182 阅读 · 0 评论 -
Lintcode:有效的括号序列
问题:给定一个字符串所表示的括号序列,包含以下字符:'(', ')','{','}','['and']', 判定是否是有效的括号序列。括号必须依照"()"顺序表示,"()[]{}"是有效的括号,但"([)]"则是无效的括号。样例:样例 1:输入:"([)]"输出:False样例 2:输入:"()[]{}"输出:Truepython...原创 2019-06-17 19:44:25 · 298 阅读 · 0 评论 -
Lintcode:最后一个单词的长度
问题:给定一个字符串, 包含大小写字母、空格' ',请返回其最后一个单词的长度。如果不存在最后一个单词,请返回0。样例:样例 1:输入:"Hello World"输出:5样例 2:输入:"Hello LintCode"输出:8注意事项一个单词的界定是,由字母组成,但不包含任何的空格。python:class Solution: ...原创 2019-06-17 18:33:55 · 138 阅读 · 0 评论 -
Lintcode:报数
问题:报数指的是,按照其中的整数的顺序进行报数,然后得到下一个数。如下所示:1, 11, 21, 1211, 111221, ...1读作"one 1"->1111读作"two 1s"->2121读作"one 2, then one 1"->1211给定一个整数n, 返回 第n个顺序。样例:样例 1:输入:1...原创 2019-06-16 23:38:59 · 157 阅读 · 0 评论 -
Lintcode:有效数字
问题:给定一个字符串,验证其是否为数字。样例:样例 1:输入: "0"输出: true解释: "0" 可以被转换成 0样例 2:输入: "0.1"输出: true解释: "0.1" 可以被转换成 0.1样例 3:输入: "abc"输出: false样例 4:输入: "1 a"输出: false样例 5:输入: "2e1...原创 2019-06-14 23:53:11 · 189 阅读 · 0 评论 -
Lintcode:反转整数
问题:将一个整数中的数字进行颠倒,当颠倒后的整数溢出时,返回 0 (标记为 32 位整数)。样例:样例 1:输入:123输出:321样例 2:输入:-123输出:-321python:class Solution: """ @param n: the integer to be reversed @return: the re...原创 2019-06-14 17:46:08 · 125 阅读 · 0 评论 -
Lintcode:二进制求和
问题:给定两个二进制字符串,返回他们的和(用二进制表示)。样例:样例 1:输入:a = "0", b = "0"输出:"0"样例 2:输入:a = "11", b = "1"输出:"100"python:class Solution: """ @param a: a number @param b: a number...原创 2019-06-13 23:08:07 · 142 阅读 · 0 评论 -
Lintcode:加一
问题:给定一个非负数,表示一个数字数组,在该数的基础上+1,返回一个新的数组。该数字按照数位高低进行排列,最高位的数在列表的最前面。样例:样例 1:输入:[1,2,3]输出:[1,2,4]样例 2:输入:[9,9,9]输出:[1,0,0,0]python:class Solution: """ @param digits: a n...原创 2019-06-13 20:11:39 · 428 阅读 · 0 评论 -
Lintcode:最长上升连续子序列
问题:给定一个整数数组(下标从 0 到 n-1, n 表示整个数组的规模),请找出该数组中的最长上升连续子序列。(最长上升连续子序列可以定义为从右到左或从左到右的序列。)样例:样例 1:输入:[5, 4, 2, 1, 3]输出:4解释:给定 [5, 4, 2, 1, 3],其最长上升连续子序列(LICS)为 [5, 4, 2, 1],返回 4。样例 2:输入:...原创 2019-06-13 18:33:00 · 370 阅读 · 0 评论 -
Lintcode:判断数独是否合法
问题:请判定一个数独是否有效。该数独可能只填充了部分数字,其中缺少的数字用.表示。样例:样例1:输入:["53..7....","6..195...",".98....6.","8...6...3","4..8.3..1","7...2...6",".6....28.","...419..5","....8..79"]输出: true样例说明: 这个数独如下图所示,...原创 2019-06-13 17:12:54 · 490 阅读 · 0 评论 -
Lintcode:奇偶分割数组
问题:分割一个整数数组,使得奇数在前偶数在后。样例:样例1:输入: [1,2,3,4]输出: [1,3,2,4]样例2:输入: [1,4,2,3,5,6]输出: [1,3,5,4,2,6]python:class Solution: """ @param: nums: an array of integers @return...原创 2019-06-13 14:45:11 · 167 阅读 · 0 评论 -
Lintcode:用栈模拟汉诺塔问题
问题:在经典的汉诺塔问题中,有 3 个塔和 N 个可用来堆砌成塔的不同大小的盘子。要求盘子必须按照从小到大的顺序从上往下堆 (如,任意一个盘子,其必须堆在比它大的盘子上面)。同时,你必须满足以下限制条件:(1) 每次只能移动一个盘子。(2) 每个盘子从堆的顶部被移动后,只能置放于下一个堆中。(3) 每个盘子只能放在比它大的盘子上面。请写一段程序,实现将第一个堆的盘子移动到最后一个堆...原创 2019-06-12 19:30:21 · 195 阅读 · 0 评论 -
Lintcode:矩阵的之字型遍历
问题:给你一个包含mxn个元素的矩阵 (m行,n列), 求该矩阵的之字型遍历。样例:样例 1: 输入: [[1]] 输出: [1]样例 2: 输入: [ [1, 2, 3, 4], [5, 6, 7, 8], [9,10, 11, 12] ] 输出: [1, 2, 5, 9, 6, 3, 4, 7, 10, ...原创 2019-06-12 18:16:07 · 156 阅读 · 0 评论 -
Lintcode:二叉树的所有路径
问题:给一棵二叉树,找出从根节点到叶子节点的所有路径。样例:样例 1:输入:{1,2,3,#,5}输出:["1->2->5","1->3"]解释: 1 / \2 3 \ 5样例 2:输入:{1,2}输出:["1->2"]解释: 1 / 2 python:"""Defini...原创 2019-06-12 15:43:47 · 127 阅读 · 0 评论 -
Lintcode:克隆二叉树
问题:深度复制一个二叉树。给定一个二叉树,返回一个他的克隆品。样例:样例1:输入: {1,2,3,4,5}输出: {1,2,3,4,5}解释:样例中二叉树如下所示: 1 / \ 2 3 / \4 5样例2:输入: {1,2,3}输出: {1,2,3}解释:样例中二叉树如下所示: 1 / \2 ...原创 2019-06-12 14:13:50 · 197 阅读 · 0 评论 -
Lintcode:翻转二叉树
问题:翻转一棵二叉树。左右子树交换。样例:样例 1:输入: {1,3,#}输出: {1,#,3}解释: 1 1 / => \ 3 3样例 2:输入: {1,2,3,#,#,4}输出: {1,3,2,#,4}解释: 1 1 / \ / \ 2 3 =...原创 2019-06-11 20:54:06 · 226 阅读 · 0 评论 -
Lintcode:平衡二叉树
问题:给定一个二叉树,确定它是高度平衡的。对于这个问题,一棵高度平衡的二叉树的定义是:一棵二叉树中每个节点的两个子树的深度相差不会超过1。样例:样例 1: 输入: tree = {1,2,3} 输出: true 样例解释: 如下,是一个平衡的二叉树。 1 / \ 2 3 样例 2: 输入: tree =...原创 2019-06-11 20:16:42 · 174 阅读 · 0 评论 -
Lintcode:在O(1)时间复杂度删除链表节点
问题:给定一个单链表中的一个等待被删除的节点(非表头或表尾)。请在在 O(1) 时间复杂度删除该链表节点。样例样例 1:输入:1->2->3->4->null3输出:1->2->4->null样例 2:输入:1->3->5->null3输出:1->5->nullpython...原创 2019-06-11 19:31:35 · 187 阅读 · 0 评论 -
Lintcode:删除链表中倒数第n个节点
问题:给定一个链表,删除链表中倒数第n个节点,返回链表的头节点。样例:Example 1: Input: list = 1->2->3->4->5->null, n = 2 Output: 1->2->3->5->nullExample 2: Input: list = 5->4->3->2->...原创 2019-06-11 18:47:20 · 141 阅读 · 0 评论 -
Lintcode:链表插入排序
问题:用插入排序对链表排序样例样例 1: 输入: 0->null 输出: 0->null样例 2: 输入: 1->3->2->0->null 输出 :0->1->2->3->nullpython:"""Definition of ListNodeclass ListNode(object): ...原创 2019-06-11 17:59:17 · 149 阅读 · 0 评论 -
Lintcode:链表求和Ⅱ
问题:假定用链表表示两个数,其中每个节点仅包含一个数字。假设这两个数的数字顺序排列,请设计一种方法将两个数相加,并将其结果表现为链表的形式。样例:样例 1:输入: 6->1->7 2->9->5输出: 9->1->2样例 2:输入: 1->2->3 4->5->6输出: 5->7->...原创 2019-06-11 02:05:50 · 167 阅读 · 0 评论 -
Lintcode:链表求和
问题:你有两个用链表代表的整数,其中每个节点包含一个数字。数字存储按照在原来整数中相反的顺序,使得第一个数字位于链表的开头。写出一个函数将两个整数相加,用链表形式返回和。样例样例 1:输入: 7->1->6->null, 5->9->2->null输出: 2->1->9->null 样例解释: 617 + 295 = 9...原创 2019-06-10 19:15:34 · 136 阅读 · 0 评论 -
Lintcode:链表倒数第n个节点
问题:找到单链表倒数第n个节点,保证链表中节点的最少数量为n。样例:Example 1: Input: list = 3->2->1->5->null, n = 2 Output: 1Example 2: Input: list = 1->2->3->null, n = 3 Output: 1python:"""D...原创 2019-06-10 14:06:34 · 114 阅读 · 0 评论 -
Lintcode:合并两个排序链表
问题:将两个排序链表合并为一个新的排序链表样例:样例 1: 输入: list1 = null, list2 = 0->3->3->null 输出: 0->3->3->null样例2: 输入: list1 = 1->3->8->11->15->null, list2 = 2->null 输出: 1...原创 2019-06-05 20:11:55 · 152 阅读 · 0 评论 -
Lintcode:删除排序链表中的重复元素
问题:给定一个排序链表,删除所有重复的元素每个元素只留下一个。样例:样例 1: 输入: null 输出: null样例 2: 输入: 1->1->2->null 输出: 1->2->null样例 3: 输入: 1->1->2->3->3->null 输出: 1->2->3->nul...原创 2019-06-05 18:30:59 · 106 阅读 · 0 评论 -
Lintcode:字符串压缩
问题:设计一种方法,通过给重复字符计数来进行基本的字符串压缩。例如,字符串aabcccccaaa可压缩为a2b1c5a3。而如果压缩后的字符数不小于原始的字符数,则返回原始的字符串。可以假设字符串仅包括 a-z 的字母。样例:样例 1:输入:str = "aabcccccaaa"输出:"a2b1c5a3"样例 2:输入:str = "aabbcc"...原创 2019-06-05 00:49:42 · 223 阅读 · 0 评论 -
Lintcode:空格替换
问题:设计一种方法,将一个字符串中的所有空格替换成%20。你可以假设该字符串有足够的空间来加入新的字符,且你得到的是“真实的”字符长度。你的程序还需要返回被替换后的字符串的长度。样例:样例 1:输入:string[] = "Mr John Smith" and length = 13输出:string[] = "Mr%20John%20Smith" and return...原创 2019-06-04 19:37:25 · 146 阅读 · 0 评论 -
Lintcode:删除元素
问题:给定一个数组和一个值,在原地删除与值相同的数字,返回新数组的长度。元素的顺序可以改变,并且对新的数组不会有影响。样例:Example 1: Input: [], value = 0 Output: 0Example 2: Input: [0,4,4,0,0,2,4,4], value = 4 Output: 4 Explanation: the ...原创 2019-05-26 22:46:47 · 132 阅读 · 0 评论 -
Lintcode:合并区间
问题:给出若干闭合区间,合并所有重叠的部分。样例:样例1:输入: [(1,3)]输出: [(1,3)]样例 2:输入: [(1,3),(2,6),(8,10),(15,18)]输出: [(1,6),(8,10),(15,18)]python:"""Definition of Interval.class Interval(object): ...原创 2019-05-26 15:57:23 · 208 阅读 · 0 评论 -
Lintcode:两个字符串是变位词
问题:写出一个函数anagram(s, t)判断两个字符串是否可以通过改变字母的顺序变成一样的字符串。样例:样例 1:输入: s = "ab", t = "ab"输出: true样例 2:输入: s = "abcd", t = "dcba"输出: true样例 3:输入: s = "ac", t = "ab"输出: falsepyth...原创 2019-05-26 14:53:02 · 276 阅读 · 0 评论 -
Lintcode:第一个只出现一次的字符
问题:给出一个字符串,找出第一个只出现一次的字符。样例:样例 1: 输入: "abaccdeff" 输出: 'b' 解释: 'b' 是第一个出现一次的字符样例 2: 输入: "aabccd" 输出: 'b' 解释: 'b' 是第一个出现一次的字符python:class Solution: """ @param str:...原创 2019-05-26 14:16:12 · 185 阅读 · 0 评论 -
Lintcode:判断字符串是否没有重复字符
问题:实现一个算法确定字符串中的字符是否均唯一出现样例:样例 1:输入: "abc_____"输出: false样例 2:输入: "abc"输出: true python:class Solution: """ @param: str: A string @return: a boolean """ d...原创 2019-05-26 13:56:40 · 156 阅读 · 0 评论 -
Lintcode:O(1)时间检测2的幂次
问题:用 O(1) 时间检测整数n是否是2的幂次。样例:Example 1: Input: 4 Output: trueExample 2: Input: 5 Output: falsepython:class Solution: """ @param n: An integer @return: True or fals...原创 2019-05-25 22:37:34 · 494 阅读 · 0 评论