自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一名小学生的辛酸奋斗史

打滚求关注~本博客仅用于在线记录笔记,用于自己翻阅,语句抽象混乱- -

  • 博客(18)
  • 资源 (1)
  • 收藏
  • 关注

原创 LintCode 22 平面列表

题目:flatten要求:给定一个列表,该列表中的每个要素要么是个列表,要么是整数。将其变成一个只包含整数的简单列表。 注意事项如果给定的列表中的要素本身也是一个列表,那么它也可以包含列表。样例:给定 [1,2,[1,2]],返回 [1,2,1,2]。给定 [4,[3,[2,[1]]]],返回 [4,3,2,1]。算法要求:请用非递归方法尝试解答这道题。解题思路:判断他是否为数字,是就存入,如果为表

2017-02-22 16:27:21 1792 1

原创 LintCode 20 骰子求和

题目:dicesSum要求:扔 n 个骰子,向上面的数字之和为 S。给定 Given n,请列出所有可能的 S 值及其相应的概率。样例:给定 n = 1,返回 [ [1, 0.17], [2, 0.17], [3, 0.17], [4, 0.17], [5, 0.17], [6, 0.17]]。算法要求:无解题思路:刚开始的时候,用的时模拟投掷的方法,结果只能计算3个骰子的概率。后来在1,2,3骰子

2017-02-18 23:52:27 1027

原创 LintCode 18 带重复元素的子集

题目:subsetsWithDup要求:给定一个可能具有重复数字的列表,返回其所有可能的子集 注意事项子集中的每个元素都是非降序的两个子集间的顺序是无关紧要的解集中不能包含重复子集样例:如果 S = [1,2,2],一个可能的答案为:[ [2], [1], [1,2,2], [2,2], [1,2], []]算法要求:你可以同时用递归与非递归的方式解决么?解题思路:在1

2017-02-18 20:53:45 553

原创 LintCode 17 子集

题目:subsets要求:给定一个含不同整数的集合,返回其所有的子集 注意事项子集中的元素排列必须是非降序的,解集必须不包含重复的子集样例:如果 S = [1,2,3],有如下的解:[ [], [1], [1,2], [1,2,3], [1,3], [2], [2,3], [3]]算法要求:你可以同时用递归与非递归的方式解决么?解题

2017-02-18 20:09:47 501

原创 LintCode 16 带重复元素的排列

题目:permuteUnique要求:给出一个具有重复数字的列表,找出列表所有不同的排列。样例:给出列表 [1,2,2],不同的排列有:[ [1,2,2], [2,1,2], [2,2,1]]算法要求:使用递归和非递归分别完成该题。解题思路:我是直接在全排列基础上改的。算法如下: vector<vector<int> > mainVec; int size; vo

2017-02-18 19:43:57 743

原创 LintCode 15 全排列

题目:permute要求:给定一个数字列表,返回其所有可能的排列。 注意事项你可以假设没有重复数字。样例:给出一个列表[1,2,3],其全排列为:[ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1]]算法要求:使用递归和非递归分别解决。解题思路:只写出来递归的方法,思路就是m位与其他位依次交换,直到m等于总个数的时候(

2017-02-17 15:02:00 619 1

原创 LintCode 14 二分查找

题目:binarySearch要求:给定一个排序的整数数组(升序)和一个要查找的整数target,用O(logn)的时间查找到target第一次出现的下标(从0开始),如果target不存在于数组中,返回-1。样例:在数组 [1, 2, 3, 3, 4, 5, 10] 中二分查找3,返回2。算法要求:如果数组中的整数个数超过了2^32,你的算法是否会出错?解题思路:在有序的数组中 ,直接从中间开始找

2017-02-16 19:26:34 327

原创 LintCode 13 字符串查找

题目:strStr要求:对于一个给定的 source 字符串和一个 target 字符串,你应该在 source 字符串中找出 target 字符串出现的第一个位置(从0开始)。如果不存在,则返回 -1。样例:如果 source = "source" 和 target = "target",返回 -1。如果 source = "abcdabcdefg" 和 target = "bcd",返回 1。算

2017-02-16 19:10:06 1704

原创 LintCode 12 带最小值操作的栈

题目:MinStack要求:实现一个带有取最小值min方法的栈,min方法将返回当前栈中的最小值。你实现的栈将支持push,pop 和 min 操作,所有操作要求都在O(1)时间内完成。 注意事项如果堆栈中没有数字则不能进行min方法的调用样例:如下操作:push(1),pop(),push(2),push(3),min(), push(1),min() 返回 1,2,1算法要求:无解题思路:这道题

2017-02-16 18:39:06 746

原创 LintCode 11 二叉查找树中搜索区间

题目:searchRange要求:给定两个值 k1 和 k2(k1 < k2)和一个二叉查找树的根节点。找到树中所有值在 k1 到 k2 范围内的节点。即打印所有x (k1 <= x <= k2) 其中 x 是二叉查找树的中的节点值。返回所有升序的节点值。样例:如果有 k1 = 10 和 k2 = 22, 你的程序应该返回 [12, 20, 22]. 20 / \ 8 22

2017-02-16 17:38:04 460

原创 LintCode 9 Fizz Buzz 问题

题目:fizzBuzz要求:给你一个整数n. 从 1 到 n 按照下面的规则打印每个数: 1.如果这个数被3整除,打印fizz. 2.如果这个数被5整除,打印buzz. 3.如果这个数能同时被3和5整除,打印fizz buzz.样例:比如 n = 15, 返回一个字符串数组:[ "1", "2", "fizz", "4", "buzz", "fizz", "7"

2017-02-16 16:15:16 1580

原创 LintCode 8 旋转字符串

题目:rotateString要求:给定一个字符串和一个偏移量,根据偏移量旋转字符串(从左向右旋转)样例:对于字符串 "abcdefg".offset=0 => "abcdefg"offset=1 => "gabcdef"offset=2 => "fgabcde"offset=3 => "efgabcd"算法要求:在数组上原地旋转,使用O(1)的额外空间解题思路:用直接定位法,来进行每个字符的

2017-02-16 15:56:21 1395 3

原创 LintCode 7 二叉树的序列化和反序列化

题目:serialize and deserialize要求:设计一个算法,并编写代码来序列化和反序列化二叉树。将树写入一个文件被称为“序列化”,读取文件后重建同样的二叉树被称为“反序列化”。如何反序列化或序列化二叉树是没有限制的,你只需要确保可以将二叉树序列化为一个字符串,并且可以将字符串反序列化为原来的树结构。样例:给出一个测试数据样例, 二叉树{3,9,20,#,#,15,7},表示如下的树

2017-02-15 22:06:28 1797

原创 LintCode 6 合并排序数组

题目:mergeSortedArray要求:合并两个排序的整数数组A和B变成一个新的数组。样例:给出A=[1,2,3,4],B=[2,4,5,6],返回 [1,2,2,3,4,4,5,6]算法要求:你能否优化你的算法,如果其中一个数组很大而另一个数组很小?解题思路:使用迭代器遍历2个数组,如果A的迭代器比B中的小,则存入第三个数组,并将A的迭代器迭代一次,否则将B的迭代器存入第三个数组,并将迭代器迭

2017-02-15 19:09:01 352

原创 LintCode 5 第K大元素

题目:kthLargestElement要求:在数组中找到第k大的元素 注意事项你可以交换数组中的元素的位置样例:给出数组 [9,3,2,4,8],第三大的元素是 4给出数组 [1,2,3,4,5],第一大的元素是 5,第二大的元素是 4,第三大的元素是 3,以此类推算法要求:要求时间复杂度为O(n),空间复杂度为O(1)解题思路:用计数排序就可以解决,注意的是,需要从后往前计数,所以需要用一个m

2017-02-15 14:41:46 1016 1

原创 LintCode 4 丑数II

题目:nthUglyNumber要求:设计一个算法,找出只含素因子2,3,5 的第 n 大的数。符合条件的数如:1, 2, 3, 4, 5, 6, 8, 9, 10, 12...注意事项 1.我们可以认为1也是一个丑数样例 如果n = 9, 返回 10算法要求:要求时间复杂度为O(nlogn)或者O(n)解题思路:仔细观察规律,从第二个数开始,每一个数为第p2个数的二倍、第p3个数的三倍

2017-02-15 13:37:25 1107

原创 LintCode 3 统计数字

题目:要求:计算数字k在0到n中的出现的次数,k可能是0~9的一个值样例 例如n=12,k=1,在 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],我们发现1出现了5次 (1, 10, 11, 12)算法要求:无解题思路:我们只需要判断数字的每一位上是否有k,使用%取模来实现取位,用/=10来实现进位,依次从0-n进行遍历即可。算法如下: int dig

2017-02-15 12:51:37 706

原创 LintCode 2 尾部的零

题目:trailingZeros要求:设计一个算法,计算出n阶乘中尾部零的个数样例 11! = 39916800,因此应该返回 2算法要求:O(logN)的时间复杂度解题思路:因为在10进制中,要想数的结尾有0,只有乘以10才可以。将n分解质因数,可以得到5和2,只需要找到有几个5,几个2就可以,因为2的个数比5多,只需要找到有几个5即可(注意这里的2和5为质因数)。算法如下:class Solu

2017-02-13 20:11:46 441

FlashFXP破解版.rar

FTP上传下载破解版

2016-08-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除