随笔分类 - LintCode
摘要:LintCode 58: Compare Strings 题目描述 比较两个字符串 和 ,确定 中是否包含 中所有的字符。字符串 和 中的字符都是 大写字母 。 样例 给出 ,返回 给出 , 返回 Fri Mar 17 2017 思路 这道题跟前面一道『两个字符串是变位词』很相似,不同的只是在这题中
阅读全文
摘要:LintCode 158: Anagram 题目描述 写出一个函数 判断两个字符串是否可以通过改变字母的顺序变成一样的字符串。 样例 给出 , ,返回 . 给出 , , 返回 . 给出 , , 返回 . Mon Mar 6 2017 思路 这道题很容易想到先将字符串排序,然后比较两个字符串是否相等,
阅读全文
摘要:LintCode 35: Reverse Linked List 题目描述 翻转一个链表。 样例 给出一个链表 ,这个翻转后的链表为 。 Mon Mar 6 2017 思路 这道题的方法就很多了,我这里第一想到的就是用三个指针来实现,可能我以前这么实现过吧。 不过这个方法并不是最优的方法,还可以用两
阅读全文
摘要:LintCode 204: Singleton 题目描述 单例 是最为最常见的设计模式之一。对于任何时刻,如果某个类只存在且最多存在一个具体的实例,那么我们称这种设计模式为单例。例如,对于 (不是动物的 哦),我们应将其设计为 模式。 你的任务是设计一个 方法,对于给定的类,每次调用 时,都可得到同
阅读全文
摘要:LintCode 388: Kth Permutation 题目描述 给定 和 ,求 组成的排列中的第 个排列。 样例 对于 , 所有的排列如下: 123 132 213 231 312 321 如果 , 第 个排列为 . Wed Mar 1 2017 思路 这道题很明显就不用什么算法呀,直接用除法
阅读全文
摘要:LintCode 387: Smallest Difference 题目描述 给定两个整数数组(第一个是数组 ,第二个是数组 ),在数组 中取 ,数组 中取 , 和 两者的差越小越好 。返回最小差。 样例 给定数组 , ,返回 。 Mon Feb 27 2017 思路 先将两个数组排序,然后分别用一
阅读全文
摘要:LintCode 407: Plus One 题目描述 给定一个非负数,表示一个数字数组,在该数的基础上 ,返回一个新的数组。 该数字按照位权大小进行排列,位权最大的数在列表的最前面。 样例 给定 表示 , 返回 . 给定 表示 , 返回 . Sat Feb 26 2017 思路 本题没什么特殊的地
阅读全文
摘要:LintCode 412: Candy 题目描述 有 个小孩站成一列。每个小孩有一个评级。 按照以下要求,给小孩分糖果: 每个小孩至少得到一颗糖果。 评级越高的小孩可以得到更多的糖果。 需最少准备多少糖果? 样例 给定评级 = , 返回 . 给定评级 = , 返回 . 给定评级 = , 返回 . .
阅读全文
摘要:LintCode 395: First Will Win 2 题目描述 有 个不同价值的硬币排成一条线。两个参赛者轮流从左边依次拿走 或 个硬币,直到没有硬币为止。计算两个人分别拿到的硬币总价值,价值高的人获胜。 请判定 第一个玩家 是输还是赢? 样例 给定数组 , 返回 . 给定数组 , 返回 .
阅读全文
摘要:LintCode 394: First Will Win 题目描述 有 个硬币排成一条线。两个参赛者轮流从右边依次拿走 或 个硬币,直到没有硬币为止。拿到最后一枚硬币的人获胜。 请判定 第一个玩家 是输还是赢? 样例 , 返回 . , 返回 . , 返回 . , 返回 . , 返回 . Sat Fe
阅读全文
摘要:LintCode 156: Merge Interval 题目描述 给出若干闭合区间,合并所有重叠的部分。 样例 给出的区间列表 = 合并后的区间列表: Fri Feb 24 2017 思路 首先将区间们按照开始元素的大小排序,然后从头到尾遍历一遍,若遇到该区间的开始元素小于前一个区间的结束元素时,
阅读全文
摘要:LintCode 190: Next Permutation 题目描述 给定一个若干整数的排列,给出按正数大小进行字典序从小到大排序后的下一个排列。 如果没有下一个排列,则输出字典序最小的序列。 样例 左边是原始排列,右边是对应的下一个排列。 Fri Feb 24 2017 思路 先看一个例子: 下
阅读全文
摘要:LintCode 373: Partition Array 题目描述 分割一个整数数组,使得奇数在前偶数在后。 样例 给定 ,返回 。 Thu Feb 23 2017 思路 简单题,可以很自然地想到再用一个答案数组,从头到尾遍历一遍,遇到奇数就放到答案数组的前面,遇到偶数就放到答案数组的后面。 还有
阅读全文
摘要:LintCode 397: Longest Increasing Continuous Subsequence 题目描述 给定一个整数数组(下标从 到 , 表示整个数组的规模),请找出该数组中的最长上升连续子序列。(最长上升连续子序列可以定义为从右到左或从左到右的序列。) 样例 给定 , 其最长上升
阅读全文
摘要:LintCode 406: Minimum Size 题目描述 给定一个由 n 个整数组成的数组和一个正整数 s ,请找出该数组中满足其和 ≥ s 的最小长度子数组。如果无解,则返回 1。 样例 给定数组 和 , 子数组 是该条件下的最小长度子数组。 Thu Feb 23 2017 思路 数组的题一
阅读全文
摘要:LintCode 402: Continuous Subarray Sum 题目描述 给定一个整数数组,请找出一个连续子数组,使得该子数组的和最大。输出答案时,请分别返回第一个数字和最后一个数字的下标。(如果两个相同的答案,请返回其中任意一个) 样例 给定 , 返回 . Thu Feb 23 201
阅读全文
摘要:LintCode 391: Count Of Airplanes 题目描述 给出飞机的起飞和降落时间的列表,用 序列表示. 请计算出天上同时最多有多少架飞机? 样例 对于每架飞机的起降时间列表: , 返回 。 Thu Feb 23 2017 思路 这道题思路很容易想到,即将飞机起飞降落的过程模拟一遍
阅读全文
摘要:LintCode 508: Wiggle Sort 题目描述 给你一个没有排序的数组,请将原数组就地重新排列满足如下性质
阅读全文
摘要:LintCode 510: Maximal Rectangle 题目描述 给你一个二维矩阵,权值为False和True,找到一个最大的矩形,使得里面的值全部为True,输出它的面积 Wed Nov 24 2016 思路 本题的思路比较多,可以用动态规划,也可以把本题看做是最长连续正数列的二维版本,还
阅读全文
摘要:LintCode 35: Reverse Linked List 题目描述 翻转一个链表。 样例 给出一个链表 ,这个翻转后的链表为 。 Thu Sep 21 2017 思路 本题的思路很多,今天把之前的方法改进了一下,使用两个指针就可以达到目的了(实际上也用了三个指针,但之前的方法太繁琐了)。 翻
阅读全文

浙公网安备 33010602011771号