[Cocos2dx]面试题汇总一

最新在网上找Cocos2dx/C++的面试题,觉得很是麻烦,特别在这总结一下,有些是亲身经历有些是朋友经历。

1、int占多少字节?

4位

2、sizeof和strlen的区别

http://blog.csdn.net/21aspnet/article/details/1539951  这篇说的非常好了,我就不废话了。

3、static_cast, dynamic_cast, const_cast

简单来说就是以下:

static_cast转换类似于C/C++里面的强制类型转换。
       dynamic_cast转换是根据基类派生类的原则进行转换,把一个派生类转换为基类使用这个转换。
       const_cast转换是去掉const变量的const

4、说一下mvc架构

MVC全名是Model ViewController,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。

5、 怎么快速实现乱序

A[10]  //正序
For (int I = 1;i<10;i++)
{
Int j = 随机  1-10
a[i]  <-> a[j]// 两个元素换一下
}
6、 快速排序   算法
#include  
#include  
using namespace std;  
int Partition(int *array,int low,int high){  
  
    int k=low+rand()%(high-low+1);  
    int tmp;  
    tmp=array[k];array[k]=array[low];array[low]=tmp;//随机选择一个点,然后将它与第low个点互换。  
    int key=array[low];  
    //上面步骤可以简化,变于理解写成这样  
    while(lowkey) high--;  
        array[low]=array[high];  
        while(low
7、 引用和指针的区别?
http://www.cnblogs.com/tracylee/archive/2012/12/04/2801519.html  

http://blog.csdn.net/listening_music/article/details/6921608

8、时针分针重合几次

表面上有60个小格,每小格代表一分钟,

时针每分钟走1/12小格,分针每分钟走1小格,从第一次重合到第二次重合分针比时针多走一圈即60小格,所以

60/(1-1/12)=720/11

每隔720/11分才重合一次(而并不是每小时重合一次)

1440里有22个720/11,如果说算上0点和24点,那也是重合23次而已,但我觉得0点应该算到前一天的24点头上,所以每一天循环下来重合22次啊

9、 找出字符串的最长不重复子串,输出长度

建一个256个单元的数组,每一个单元代表一个字符,数组中保存上次该字符上次出现的位置;

依次读入字符串,同时维护数组的值;

如果遇到冲突了,就返回冲突字符中保存的位置,继续第二步。也可以用hashmap保存已经出现的字符和字符的位置

10、说是有一个文本文件,大约有一万行,每行一个词,要求统计出其中最频繁出

现的前十个词。

先用哈希,统计每个词出现的次数,然后在用在N个数中找出前K大个数的方法找出出现

次数最多的前10个词。



你可能感兴趣的:(Cocos2d-x)