C++经典/常考笔试面试题探讨(找工作二)
gengshenghong
这个作者很懒,什么都没留下…
展开
-
求最大公约数问题
最大公约数问题,也不是个很难的问题,如果知道思路就很容易了。对于最大公约数问题,最简单的思路应该算是直接循环从1开始用两个数对其做除法了,找出最大公约数。不过这思路太没技术含量了,效率也低,如果数字很大,还是很慢的。一般解决最大公约数问题的方法是:辗转相除法(欧几里德算法)。算法思想为(注意:b):1.a÷b,令r为所得余数(0≤r<b)。若r=0,算法结束;b即为答案。2.互换:原创 2010-05-25 22:29:00 · 1764 阅读 · 0 评论 -
智力问题——拿球问题
<br /> A,B从一堆玻璃球(共100个)里向外拿球,规则如下: <br />(1)A先拿,然后一人一次交替着拿; <br />(2)每次只能拿1个或2个或4个; <br />(3)谁拿最后一个球,谁就是最后的失败者; <br />问A,B谁将是失败者?写出你的判断步骤。原创 2010-06-02 21:39:00 · 1328 阅读 · 0 评论 -
经典考题——无重复字符问题(查找字符串中第一个无重复字符)
<br />题目描述:<br />寻求最佳的算法<br /> 编写一个高效率函数来找出一个字符串中第一个无重复字符.例如:”total”中的o,”teeter”中的r.要求算法效率优于O(n2)。<br /><br />分析:个人觉得,这个题目如果不强调效率就有点简单了吧,两层循环弄一下应该没问题了。但是另外一个角度,我觉得这个题目肯定是要遍历字符串的,所以算法效率最低应该就是O(n)吧,不知道是否是这样。<br />在笔试群硕的时候,由于时间关系,这个题我没有写代码,在只有5分钟的情况下,写了个思路。我当原创 2010-06-02 21:12:00 · 4992 阅读 · 3 评论 -
经典笔试面试题——杂题(各种各样的小问题)
1. 嵌入式系统经常具有要求程序员去访问某特定的内存位置的特点。在某工程中,要求设置一绝对地址为0x67a9的整型变量的值为0xaa66。编译器是一个纯粹的ANSI编译器。写代码去完成这一任务。在彪琪数码科技笔试题中我遇到过了。我的答案不知道是否正确,大概差不多吧。看下面的标准答案分析吧:这一问题测试你是否知道为了访问一绝对地址把一个整型数强制转换(typecast)为一指针是合法的。这一原创 2010-05-30 17:32:00 · 988 阅读 · 0 评论 -
深拷贝和浅拷贝之间的区别
哎,这个问题对我而言本身我觉得我是懂的,但是要我说我真不知道如何表达。但是面试就是喜欢问这个问题,不知道为何。难道这个问题很高级?好吧,既然这样,还是学习一下别人的专业答案吧。参考参考。Q:什么是浅拷贝(shallow copy)和深拷贝(deep copy)? A: 浅拷贝就是成员数据之间的一一赋值:把值赋给一一赋给要拷贝的值。但是可能会有这样的情况:对象还包含资源,这里的资源可以值堆资原创 2010-05-30 00:56:00 · 1234 阅读 · 0 评论 -
自己实现基本的C标准库函数——实现memcpy
不调用库函数,实现memcpy。 转自:http://hi.baidu.com/sernger/blog/item/fa900ecb43d44f4ff21fe7ea.html首先对这个函数做一些说明。#include void *memcpy(void *to, const void *from, size_t count)函数memcpy()从from指向的数组向to指向转载 2010-05-30 16:51:00 · 3893 阅读 · 0 评论 -
自己实现基本的C标准库字符串处理函数——实现strcpy
http://www.cppblog.com/lizhongxu2008/archive/2009/02/11/73456.html题目: 已知strcpy函数的原型是: char * strcpy(char * strDest,const char * strSrc); 1.不调用库函数,实现strcpy函数。 2.解释为什么要返回char *。转载 2010-05-30 16:42:00 · 863 阅读 · 0 评论 -
经典笔试面试题——宏macro
1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)经典的笔试题目,在我面试彪琪数码科技的时候笔试题有这个题。我的答案还算正确吧,但是显然不是完美的。看下面的完美解析:#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL 1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等) 2).原创 2010-05-30 17:23:00 · 929 阅读 · 0 评论 -
经典考题——String类的实现(考察构造函数析构函数拷贝构造函数和赋值构造函数)
问题描述: 已知String 类定义如下: class String { public: String(const char *str = NULL); // 通用构造函数 String(const String &another); // 拷贝构造函数 ~ String(); // 析构函数 String & operater =(const Strin原创 2010-05-30 21:28:00 · 1926 阅读 · 0 评论 -
经典考题——用变量a给出下面的定义(数据声明的考察)
用变量a给出下面的定义 a) 一个整型数(An integer) b)一个指向整型数的指针( A pointer to an integer) c)一个指向指针的的指针,它指向的指针是指向一个整型数( A pointer to a pointer to an intege)r d)一个有10个整型数的数组( An array of 10 integers) e) 一个有10个原创 2010-05-30 17:01:00 · 2122 阅读 · 0 评论 -
自己实现基本的C标准库字符串处理函数——基本问题
字符串是C语言的精华之一,C语言是笔试考题的核心知识点,不管你是学c++,学java还是c#、.net,还是脚本什么的,最好还是懂点C吧,不懂C笔试或许比较吃亏。所以在笔试面试中,字符串的问题是经常出现的,其中有一类问题就是自己实现一些基本的C标准库的字符串处理函数或其他C标准库函数。问题一描述: 用标准C写一个判断给定字符串长度的函数。要求:不可使用库函数,字符串用char *c传入,可用伪原创 2010-05-25 15:25:00 · 1747 阅读 · 0 评论 -
不使用中间变量交换变量a、b变量
这是一道经典题目,很基础,但是经常考。题目描述:不用任何变量交换a、b两个变量。分析:交换两个变量的问题在c语言入门书籍中都有所涉及。在讲解c语言的函数的时候老师都会告诉我们,实参和形参的问题,下面的函数是不能完成交换两个变量的:void swap(int a,int b){int temp;temp=a;a=b;b=temp;}大家都懂,就不用多说,用原创 2010-05-25 14:14:00 · 3178 阅读 · 0 评论 -
二叉树:已知前序中序求后序结果的问题
题目描述:若某二叉树的前遍历访问顺序是序abdgcefh,中序遍历顺序是dgbaechf,则后序遍历的访问顺序是什么。若某二叉树的前遍历访问顺序是序abdgcefh,中序遍历顺序是dgbaechf,则后序遍历的访问顺序是什么。分析:首先要明确一个基础的问题,前序遍历的顺序是:根、左、右;中序遍历的顺序是:左、根、右;后序遍历的顺序是:左、右、根。所以这里的前中后都是指的根的位置。原创 2010-05-25 14:48:00 · 19505 阅读 · 9 评论