随笔分类 - 笔试面试题
摘要:C/C++程序设计员应聘常见面试笔试试题深入剖析http://www.nowcoder.com/discuss/1826?type=2&order=0&pos=23&page=11.引言本文的写作目的并不在于提供C/C++程序员求职面试指导,而旨在从技术上分析面试题的内涵。文中的大多数面试题来自各大...
阅读全文
摘要:题目:有头巾五条,三白二红,有三个人排成一列,每人戴一条头巾,后面的人能看到前面的人的头巾颜色,让每个人依次猜自己头巾的颜色,第一个人说不知道,第二个人说不知道,第三个人说不知道,沉默一会之后,突然某个人说“我知道了”,请问这个人是哪个?他的头巾是什么颜色?思路:答案:第一个人,头巾为白色。分析:1...
阅读全文
摘要:题目:有1,2,3,......无穷个格子,你从1号格子出发,每次1/2概率向前跳一格,1/2概率向前跳两格,走到格子编号为4的倍数时结束,结束时期望走的步数为____。思路:1、MonteCarlo模拟实验参考代码2、有限状态机的概率转移思想跳一格跳两格都算一步;dp(i,j)表示从格子i到格子j...
阅读全文
摘要:题目:在如下8*6的矩阵中,请计算从A移动到B一共有____种走法。要求每次只能向上或向右移动一格,并且不能经过P。456492568626680702思路:1、组合数学在8*6的矩阵,从左下角A到右上角B,一共需要走12步,其中5步向上,7步向右,因此总的走法一共有C(12,5)=792种但题目规...
阅读全文
摘要:题目:有一块宝石,1级升2级成功率100%,2级升3级成功率80%,3级升4级成功率60%,4级升5级成功率40%,每次升级失败时降回到1级。请问一块1级宝石升到5级平均要多少次?思路:问题:求一块1级宝石升级到5级的期望次数1、蒙特卡洛模拟试验考虑一下期望的定义,所有的可能的次数*出现该次数的概率...
阅读全文
摘要:题目: 360员工桂最近申请了一个长假,一个人背着包出去自助游了。 路上,他经过了一个小镇,发现小镇的人们都围在一棵树下争吵。桂上前询问情况,得知小镇的人们正缺一个镇长,他们希望能选一个知名又公正的镇长,即,大家希望能选出一个人,所有人都认识他,但同时他不认识镇上除自己以外的其他人(在此,我们默...
阅读全文
摘要:题目:给一个定义:对一个整数,若其中存在相邻两位上的数字相同,则称其为“重复的数”;现给定一个正整数n,求不小于n的最小的非“重复的数”。思路:假设输入的数为n,则令m=n,分别取m的最低两位数字a,b,判断是否a==b,如果是说明是重复的数,那么递归调用n=m+1;考虑特殊情况,ab=99,产生进...
阅读全文
摘要:题目:1、给定一数组,数组中的数字均为int类型,除了一个数出现一次,其他都出现了两次,请找出这个数;2、给定一数组,数组中的数字均为int类型,除了一个数出现一次,其他都出现了三次,请找出这个数;思路:这两道题,最容易想到的方法就是通过hashmap统计或者先排序后遍历的方法,但它们要么需要的空间...
阅读全文
摘要:题目:在一维坐标轴上有n个区间段,求重合区间最长的两个区间段。区间段的数据结构定义如下:struct Interval{ int start; int end;};思路:首先按照区间的左端点即start对n个区间段进行排序;然后从前往后遍历所有区间,比较前后两个区间的右端点即end;假设...
阅读全文
摘要:题目:Given any positive integer N, you are supposed to find all of its prime factors, and write them in the format N = p1^k1 * p2^k2 *...*pm^km.输入描述:Eac...
阅读全文
摘要:题目:把一个整数数组中重复的数字去掉,并输出剩下的不重复的元素。(要求不能开辟新空间)思路:先排序,然后遍历数组比较,详见代码代码:#include #include using namespace std;int cmp(const void* a,const void* b){ retur...
阅读全文
摘要:题目:假设数组a有n个元素,元素的取值范围为1~n,如何判定数组是否存在重复元素?思路:方法1:数组排序,比较相邻元素是否相等;时间复杂度:O(nlogn),空间复杂度:O(1)方法2:使用bitmap(位图),定义长度为N/8的char数组,每个bit表示对应数字是否出现过。遍历数组,使用bitm...
阅读全文
摘要:题目:题目1:小冯和小崔都去参加一个 workshop,这个 workshop 从晚上 6 点到 8 点。但是由于小冯 和小崔都很忙,所以都只能参加部分会议。小冯参加一个小时,而小崔会参加半个小时。那 么小冯和小崔在 works 遇到的概率有多大?题目2:两个人约好12:00-13:00之间见面,先...
阅读全文
摘要:题目:百度全体员工玩分组游戏,前面五分钟大家分头找队友,并将每个人找到的队友信息汇报给主持人,如果A和B是队友,B和C是队友,那么A和C也是队友;接着主持人不断地随机抽取两个人,希望判断二者是否为队友。请设计一个计算机程序辅助主持人判断两个人是否为队友,说明程序的关键算法,不需要代码实现。例如:,,...
阅读全文
摘要:题目:给定以下二叉树:struct node{node *left, *right;int value;};要求编写函数 node* foo(node *node, unsigned int m, unsigned int k);输出以 node 为根的二叉树第 m 层的第 k 个节点值.(leve...
阅读全文
摘要:问题:Given an array of N integer, find the length of the longest increasing subsequence.For example, given [1,-5,4,5,10,-1,-5,7], the longest increasing...
阅读全文
摘要:题目:求二叉树两个结点的最远距离。二叉树定义如下:class TreeNode{public: int val; TreeNode* left; TreeNode* right; TreeNode(int x):val(x),left(NULL),right(NULL){}}...
阅读全文
摘要:题目:求1到1亿间的质数或素数思路:什么是质数?质数(prime number)又称素数,有无限个。一个大于1的自然数,除了1和它本身外,不能被其他自然数(质数)整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则称为合数。(来自百度百科)方法1:遍历1到1亿间的所有数,然后逐个判断是否为...
阅读全文
摘要:题目:输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.”。思路:通过hash表记录第二个字符串中出现的字符,hash表可以由长度为256的bool数组表示。然后遍历...
阅读全文
摘要:题目:八皇后问题:在8 X 8的国际象棋上摆放八个皇后,使其不能相互攻击,即任意两个皇后不得处于同一行,同一列或者同意对角线上,求出所有符合条件的摆法。思路:1、回溯法数据结构:由于8个皇后不能处在同一行,那么肯定每个皇后占据一行,这样可以定义一个数组A[8],数组中第i个数字,即A[i]表示位于第...
阅读全文