自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 LintCode -- 二叉树的后序遍历

LintCode -- binary-tree-postorder-traversal(二叉树的后序遍历)原题链接:http://www.lintcode.com/zh-cn/problem/binary-tree-postorder-traversal/给出一棵二叉树,返回其节点值的后序遍历。样例给出一棵二叉树 {1,#,2,3}, 1

2015-09-30 22:17:41 1644

原创 LintCode -- 二叉树的中序遍历

LintCode -- binary-tree-inorder-traversal(二叉树的中序遍历)原题链接:http://www.lintcode.com/zh-cn/problem/binary-tree-inorder-traversal/给出一棵二叉树,返回其中序遍历样例给出二叉树 {1,#,2,3}, 1 \

2015-09-30 20:44:29 2188

原创 LintCode -- 二叉树的前序遍历

LintCode -- binary-tree-preorder-traversal(二叉树的前序遍历)原题链接:http://www.lintcode.com/zh-cn/problem/binary-tree-preorder-traversal/给出一棵二叉树,返回其节点值的前序遍历。您在真实的面试中是否遇到过这个题? Yes样

2015-09-30 19:58:32 2342

原创 LintCode -- 乘积最大子序列

LintCode -- maximum-product-subarray(乘积最大子序列)原题链接:http://www.lintcode.com/zh-cn/problem/maximum-product-subarray/找出一个序列中乘积最大的连续子序列(至少包含一个数)。样例比如, 序列 [2,3,-2,4] 中乘积最大的子序列为 [2,

2015-09-30 19:46:34 820

原创 LintCode -- 不同的路径 II

LintCode -- unique-paths-ii(不同的路径 II)原题链接:http://www.lintcode.com/zh-cn/problem/unique-paths-ii/跟进“不同的路径”:现在考虑网格中有障碍物,那样将会有多少条不同的路径?网格中的障碍和空位置分别用1和0来表示。样例如下所示在3x3的网

2015-09-29 18:20:54 643

原创 算法导论12.2查询二叉搜索树 练习总结

12.2-1 假设一棵二叉搜索树中的结点在 1 到 1000 之间,现在想要查找数值为 363 的结点。下面序列中哪个不是查找过的序列?a. 2, 252, 401, 398,330,344,397,363。b. 924,220,911,244,898,258,362,363。c. 925,202,911,240,912,245,363。d. 2,399,387,219,266,3

2015-09-28 18:56:52 3630

原创 LintCode -- 不同的子序列

LintCode -- distinct-subsequences(不同的子序列)原题链接:http://www.lintcode.com/zh-cn/problem/distinct-subsequences/给出字符串S和字符串T,计算S的不同的子序列中T出现的个数。子序列字符串是原始字符串通过删除一些(或零个)产生的一个新的字符串,并且对剩下的字符

2015-09-28 00:29:37 617

原创 LintCode -- k数和

LintCode -- k-sum(k数和)原题链接:http://www.lintcode.com/zh-cn/problem/k-sum/给定n个不同的正整数,整数k(k 在这n个数里面找出K个数,使得这K个数的和等于目标数字,求问有多少种方案?您在真实的面试中是否遇到过这个题? Yes样例给出[1,2,3

2015-09-27 19:31:00 1396

原创 二叉树的前序、中序、后续遍历

LintCode 也有相关的题目,翻转二叉树。http://blog.csdn.net/chan15/article/details/48632357  这里有我的前、中、后序遍历的翻转二叉树非递归实现。前序遍历(DLR,DataLeftChild RightChild):        根结点 -> 左儿子 -> 右儿子        15 6 3 2 4 7 1

2015-09-25 20:47:21 3265

原创 算法导论12.1什么是二叉搜索树 练习总结

12.1-1 对于关键字集合 { 1,4,5,10,16,17,21 },分别画出高度为2、3、4、5 和 6 的二叉搜索树。ANSWER:12.1-2 二叉搜索树性质与最小堆性质(见 6.1 节)之间有什么不同?能使用最小堆性质在 O( n ) 时间内按序输出一颗有 n 个结点的关键字吗?可以的话,请说明如何做,否则解释理由。ANSWER:① 最小堆只是根结点比儿子的关键

2015-09-25 18:33:34 1901

原创 算法导论11章散列表 思考题总结

11-1 (散列最长探查的界) 采用开放寻址法,用一个大小为 m 的散列表来存储 n ( n a. 假设采用均匀散列,证明:对于 i = 1,2,... ,n,第 i 次插入需要严格多于 k 次探查的概率至多为 2^(-k) 。ANSWER:b. 证明:对于 i = 1,2,... ,n,第 i 次插入需要多于 2lgn 次探查的概率为 O( 1/ n^2 )。ANSWER

2015-09-24 23:34:03 3454

原创 算法导论11.4开放寻址法 练习总结

11.4-1 考虑将关键字 10、22、31、4、15、28、17、88、59用开放寻址法插入到一个长度为 m = 11 的散列表中,辅助散列函数为 h'( k ) = k mod m。试说明分别用线性探查,二次探查(c1 = 1,c2 = 3) 和双重散列h2( k ) = 1 + ( k mod (m-1))将这些关键字插入散列表的过程。ANSWER:序号线性探查

2015-09-24 17:03:10 3231

原创 LintCode -- 最长上升子序列 O(nlgn)

LintCode -- longest-increasing-subsequence(最长上升子序列)原题链接:http://www.lintcode.com/zh-cn/problem/longest-increasing-subsequence/给定一个整数序列,找到最长上升子序列(LIS),返回LIS的长度。样例给出[5,4,1,2,3],这个

2015-09-24 15:10:21 510

原创 算法导论11.3散列函数 练习总结

11.3-1 假设我们希望查找一个长度为n的链表,其中每一个元素都包含一个关键字 k 并具有散列值 h( k )。每一个关键字都是长字符串。那么在表中查找具有给定关键字的元素时,如何利用各元素的散列值呢?ANSWER:对给定关键字 k,通过 h( k )计算出散列值查找该元素。11.3-2 假设将一个长度为 r 的字符串散列到 m 个槽中,并将其视为一个以128为基数的数,要求

2015-09-23 20:46:35 3578

原创 算法导论11.2散列表 练习总结

11.2-1 假设用一个散列函数 h 将 n 个不同的关键字散列刀一个长度为 m 的数组 T 中。假设采用的是简单均匀散列,那么期望的冲突数是多少?更准确地,集合 { { k,l } :k ≠ l,且h( k ) ≠ h( l ) } 基的期望值是多少?ANSWER:11.2-2 对于一个用链接法解决冲突的散列表,说明将关键字 5,28,19,15,20,33,12,17,

2015-09-23 13:08:33 3511 1

原创 算法导论11.1直接寻址表 练习总结

11.1-1 假设一动态集合S用一个长度为m的直接寻址表T来表示。请给出一个查找S中最大元素的过程。你所给的过程在最坏情况下的运行时间是多少?ANSWER:遍历整个寻址表T,时间O(m)。11.1-2 位向量(bit vector)是一种仅包含0和1的数组。长度为m的位向量所占空间要比包含m个指针的数组少得多。请说明如何用一个位向量来表示一个包含不同元素(无卫星数据)的

2015-09-22 19:21:16 1670 1

原创 LintCode -- 不同的路径

LintCode -- unique-paths(不同的路径)原题链接:http://www.lintcode.com/zh-cn/problem/unique-paths/有一个机器人的位于一个M×N个网格左上角(下图中标记为'Start')。机器人每一时刻只能向下或者向右移动一步。机器人试图达到网格的右下角(下图中标记为'Finish')。问有多

2015-09-22 17:16:04 959

原创 LintCode--最长上升连续子序列

lintcode--longest-increasing-continuous-subsequence(最长上升连续子序列)原题链接:http://www.lintcode.com/zh-cn/problem/longest-increasing-continuous-subsequence/给定一个整数数组(下标从 0 到 n-1, n 表示整个数组的规模),请找出该数组

2015-09-22 16:56:55 750

原创 LintCode--最大子数组差

原题链接:http://www.lintcode.com/zh-cn/problem/maximum-subarray-difference/给定一个整数数组,找出两个不重叠的子数组A和B,使两个子数组和的差的绝对值|SUM(A) - SUM(B)|最大。返回这个最大的差值。样例给出数组[1, 2, -3, 1],返回 6注意子数

2015-09-21 22:19:01 1160

原创 LintCode--最小子数组

原题链接:http://www.lintcode.com/zh-cn/problem/minimum-subarray/给定一个整数数组,找到一个具有最小和的子数组。返回其最小和。样例给出数组[1, -1, -2, 1],返回 -3注意子数组最少包含一个数字分析:如果数组全为正,则返回最小值,否则和最大子序列和一样动态规划

2015-09-21 21:05:46 1235

原创 LintCode--数飞机

原题链接:http://www.lintcode.com/zh-cn/problem/number-of-airplanes-in-the-sky/给出飞机的起飞和降落时间的列表,用 interval 序列表示. 请计算出天上同时最多有多少架飞机?样例对于每架飞机的起降时间列表:[[1,10],[2,3],[5,8],[4,7]], 返回3。

2015-09-21 20:18:26 1306

原创 LintCode--翻转二叉树(非递归)

原题链接:http://www.lintcode.com/zh-cn/problem/invert-binary-tree/翻转一棵二叉树样例 1 1 / \ / \2 3 => 3 2 / \ 4 4挑战递归固然可行,能否写个非递归的?

2015-09-21 20:11:44 649

原创 LintCode -- 寻找缺失的数

原题链接:http://www.lintcode.com/zh-cn/problem/find-the-missing-number/给出一个包含 0 .. N 中 N 个数的序列,找出0 .. N 中没有出现在序列中的那个数。您在真实的面试中是否遇到过这个题?  Yes样例N = 4 且序列为 [0, 1, 3] 时,缺

2015-09-21 20:10:27 509

原创 LintCode--买卖股票的最佳时机

原题链接:http://www.lintcode.com/zh-cn/problem/best-time-to-buy-and-sell-stock/假设有一个数组,它的第i个元素是一支给定的股票在第i天的价格。如果你最多只允许完成一次交易(例如,一次买卖股票),设计一个算法来找出最大利润。样例给出一个数组样例 [3,2,3,1,2], 返回 1

2015-09-21 20:08:54 1096

原创 LintCode--买卖股票的最佳时机 II

原题链接:http://www.lintcode.com/zh-cn/problem/best-time-to-buy-and-sell-stock-ii/假设有一个数组,它的第i个元素是一个给定的股票在第i天的价格。设计一个算法来找到最大的利润。你可以完成尽可能多的交易(多次买卖股票)。然而,你不能同时参与多个交易(你必须在再次购买前出售股票)。样例给出一个数

2015-09-21 20:05:20 993

空空如也

空空如也

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

TA关注的人

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