算法
文章平均质量分 70
mxlmxlmxl33
这个作者很懒,什么都没留下…
展开
-
背包问题(动态优化)
背包问题主要场景为:原创 2014-09-29 23:33:36 · 551 阅读 · 0 评论 -
常见数据结构面试题目(二)
题目:定义栈的数据结构,要求添加一个min函数,能够得到栈的最小元素。要求函数min、push以及pop的时间复杂度都是O(1)。此题是Google在06年的面试题。看到时间复杂度后,自然想到用空间换取时间。具体思路如下:除了题目中要求的栈,额外建立一个用来存储最小值的栈。但v_push>=min时,将v_push压入数值栈,同时将最小值栈顶元素重新压入。当v_push源代原创 2015-03-22 15:19:02 · 360 阅读 · 0 评论 -
常见数据结构面试题目(一)
1、输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。要求不能创建任何新的结点,只调整指针的指向。 10 / \ 6 14 / \ / \4 8 12 16 转换成双向链表4=6=8=10=12=14=16。 首先我们定义的二元查找树 节点的数据结构如下: struct BSTreeNode原创 2015-03-19 21:41:07 · 438 阅读 · 0 评论 -
常见数据结构面试题目(三)
题目: 输入一个整形数组,数组里有正数也有负数。数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。求所有子数组的和的最大值。要求时间复杂度为O(n)。 例如输入的数组为1, -2, 3, 10, -4, 7, 2, -5,和最大的子数组为3, 10, -4, 7, 2,因此输出为该子数组的和18。 思路:根据题目,连续元素原创 2015-03-23 22:14:45 · 426 阅读 · 0 评论 -
常见数据结构面试题目(四)
输入一个整数和一棵二元树。从树的根结点开始往下访问一直到叶结点所经过的所有结点形成一条路径。打印出和与输入整数相等的所有路径原创 2015-04-01 22:30:19 · 556 阅读 · 0 评论