算法
文章平均质量分 70
wangwh485
hitcser
展开
-
腾讯2008年笔试题-背包问题 递归和非递归解法
问题描述:有一个背包,能盛放的物品总重量为S,设有N件物品,其重量分别为w1,w2,...,wn.希望从N件物品中选择若干件物品,所选物品的重量之和恰能放入该背包,即所选物品的重量之和等于S。1、递归算法 #include #include using namespace std;const int N=7;const int S=20;int w[N+1]={0,1,4,3,4,5,2,7};int knap(int s,int n){ if(s==0)return 1; if(s0&&n转载 2010-10-28 11:00:00 · 1184 阅读 · 0 评论 -
M个数组的最小公共元素
一道电面题,M个非减有序的非负整数数组,每个数组长度均为N,求这M个数组的最小公共元素,同学给了一种思路,首先找出每个数组的第一个元素中最大的一个,然后在其他数组中向后查找直到找到等于或大于这个最大元素的位置,或者超出数组长度停止,然后在新的M个位置中查找最大的,重复前面的过程。原创 2011-09-07 13:20:35 · 1352 阅读 · 0 评论 -
最近的两个面试
这周参加了两个面试,一个是sznr的,一个是电面。sznr周二初试,周三笔试,周四复试,周五体检,效率很高。很可惜,觉得不合适,没去。面试主要是问简历上写的项目。没有什么技术问题。笔试题主要是:1、一些基本的填空,输入输出什么的。2、编程:归并排序、汉诺塔问题、最大带权子原创 2011-09-15 22:32:45 · 804 阅读 · 0 评论 -
字符串逆转问题
问题描述: 长度为n的字符串,在第 i 的位置处向左旋转或者向右旋转。比如字符串abcdefgh 长度n为8 ,若将该字符串在i=3的位置处,向左旋转则得到字符串defghabc 。问题要求:时间复杂度要和n成正比,内存几十字节。问题解决方法:数学基础 即将矩阵转载 2011-08-24 21:21:37 · 581 阅读 · 0 评论 -
第一个只出现一次的字符
方法1 : 第一个只出现一次的字符。 (1)考虑使用一个hash表,将各个字符映射到表中,然后表中存储有该字符出现的次数,以及首次出现的下标。 (2)映射完成之后,扫描hash数组查找出现次数为1的字符,并转载 2011-08-24 21:48:42 · 561 阅读 · 0 评论 -
找出数组中唯一出现一次的两个数字
一问题描述 一个数组中,存在两个只出现一次的数字,其余的数字均出现两次。要求在时间复杂度o(n),空间复杂度为o(1)的情况下找出这两个数字。 二 问题分析 此题实际考察了,对位操作的理解。首先进行简化,考虑只有一个数组中,只存在出现了一次的一个数字转载 2011-08-24 16:03:31 · 3586 阅读 · 0 评论 -
整数N中包含的1的个数
一 方法: 求一个整数中,二进制数含有1的个数 (1) 方法1 将整数依次向右移动一位,判断最后一位是0还是,但是这样做的话,可能导致负数无法正常表示 (2) 方法2 对1进行左移,判断。 (3) 方法3转载 2011-08-24 17:06:20 · 780 阅读 · 0 评论 -
两个栈实现一个队列
一问题描述两个栈实现一个队列的操作appendTail 将要插入的元素push进s1。注意此处不需要,再把s2中的元素导入到s1了,因为s1和s2两者的顺序是相反的。deleteHead 如果s2中的元素不为空,则直接弹出栈顶 若为空,则需要把转载 2011-08-24 17:20:25 · 430 阅读 · 0 评论 -
寻找和为给定数的连续正整数数列
比如 sn = 100 时,总和为100 的连续正整数数列有1100218 19 20 21 2239 10 11 12 13 14 1转载 2011-08-29 11:12:13 · 1011 阅读 · 0 评论 -
最长公共子序列
最长公共子序列与最长公共子串的区别在于最长公共子序列不要求在原字符串中是连续的,比如ADE和ABCDE的最长公共子序列是ADE。我们用动态规划的方法来思考这个问题如是求解。首先要找到状态转移方程:等号约定,C1是S1的最右侧字符,C2是S2的最右侧字符,S1‘是从转载 2011-09-06 21:02:26 · 847 阅读 · 0 评论 -
求和最大的连续子串问题
最大子序列是要找出由数组成的一维数组中和最大的连续子序列。比如{5,-3,4,2}的最大子序列就是 {5,-3,4,2},它的和是8,达到最大;而 {5,-6,4,2}的最大子序列是{4,2},它的和是6。你已经看出来了,找最大子序列的方法很简单,只要前i项的和还没有小于0那么子转载 2011-08-29 11:09:54 · 1723 阅读 · 0 评论 -
一道概率题目--几何概型
<br />一根棒子截成三段,问这三段能构成三角形的概率?<br />解答:<br /><br />上图在三角形是Ω的区域,里面的小三角形是事件A的区域<br />所以P(A)=S(A)/S(Ω)=1/4<br /> <br />参考http://bbs.pep.com.cn/thread-378689-1-1.html###原创 2011-05-09 10:07:00 · 661 阅读 · 0 评论 -
海量数据处理(1)Bitmap, Bloom Filter, Hash(转)
<br /><br />http://dijunzheng2008.blog.163.com/blog/static/989598972010713251555/<br />读书笔记。这一篇的Bitmap和Bloom Filter,都是在大规模数据下出现的新方法。其实概念都不是特别复杂,但是没有接触过的话,不容易一下子想出来。<br />1. Bitmap<br />问题:数据库里存了很多800电话号码,数量特别大,以至于内存放不下,如何排序?<br />方案:电话号码类似于800-810-5555,如果除转载 2011-05-12 17:22:00 · 880 阅读 · 0 评论 -
算法面试:精选微软经典的算法面试100题
<br /><br />微软等数据结构+算法面试100题首次完整亮相 (注:本文转自July)<br /> ---100题V0.1版最终完成<br /> <br />================<br />作者:July 2010年12月6日<br />微软等100题系列V0.1版终于结束了。<br />从2010年10月11日当天最初发表前40题以来,直至此刻,整理这100题,已有近2个月。<br />2个月,因为要整理这100题,很多很多其它的事都被我强迫性的搁置一旁转载 2011-03-23 01:15:00 · 1417 阅读 · 0 评论 -
链表环状检测主要有三种方法
http://blogold.chinaunix.net/u1/41845/showart_2019391.html 链表环状检测主要有三种方法: 1、追赶法;如 robinzsy。 2、外部记录法;如improgrammer。 3、内部记录法(打记号);如VivianSnow。 内部标记法和外部标记法其实是一个道理,不过就是辅助变量一个转载 2011-06-06 13:10:00 · 712 阅读 · 0 评论 -
一些重要的算法
下面是一些比较重要的算法,原文罗列了32个,但我觉得有很多是数论里的,和计算机的不相干,所以没有选取。下面的这些,有的我们经常在用,有的基本不用。有的很常见,有的很偏。不过了解一下也是好事。也欢迎你留下你觉得有意义的算法。(注:本篇文章并非翻译,其中的算法描述大部份摘自Wikip转载 2011-07-31 18:29:59 · 407 阅读 · 0 评论 -
最长回文子串
void huiwen(const char *p){ int n = strlen(p); int maxlen = 0; int l,r; int start=0; bool flag=0; char res[BUFFSIZE]; for(int i=1;i<n原创 2011-09-06 19:39:37 · 675 阅读 · 0 评论 -
最长公共子串LCS
找两个字符串的最长公共子串,这个子串要求在原字符串中是连续的。其实这又是一个序贯决策问题,可以用动态规划来求解。我们采用一个二维矩阵来记录中间的结果。这个二维矩阵怎么构造呢?直接举个例子吧:"bab"和"caba"(当然我们现在一眼就可以看出来最长公共子串是"ba"或"ab")转载 2011-09-06 21:00:26 · 1721 阅读 · 0 评论 -
1-1000放在含有1001个元素的数组中,只有唯一的一个元素值重复,其它均只出现一次
1-1000放在含有1001个元素的数组中,只有唯一的一个元素值重复,其它均只出现一次。每个数组元素只能访问一次,设计一个算法,将它找出来;不用辅助存储空间,能否设计一个算法实现?将1001个元素相加减去1,2,3,……1000数列的和,得到的差即为重复的元素。转载 2011-09-07 22:34:16 · 4708 阅读 · 0 评论 -
一次腾讯招聘的笔试和面试题
笔试感觉笔试挺不正规的,可能是由于参加的人太多了吧,教室基本上坐满了,而且大家互相挨着,很容易就能看到别人的答案。题型:30道不定项选择题,两道程序填空题,附加题。时间为2个小时。不定项选择题考的内容非常广泛,包括但不限定于以下内容:计算机体系结构转载 2011-08-29 16:10:49 · 1726 阅读 · 0 评论