【笔试与面试】极致游戏与福富软件

 

——————————————————————————————-      

        第一个是关于栈溢出的问题,题目给出了四个function,要求面试者选出哪个不会出现栈溢出,并说明。几个函数我倒忘了,倒是形参和函数体中用了const和static。我刚看到那个题目,一头雾水啊。我连程序跑的时候,什么时候会用到栈都不能完全说明白,更别说,甄别这几个function哪个能规避了,看了一分钟,老实交代不会吧。(

【笔试与面试】极致游戏与福富软件心里还是想:这前辈要能现场指导指导就好了,让我死个明白!)

        堆栈溢出(英语:Stack overflow,港台称“堆叠溢位”)在计算机科学中是指使用过多的存储器时导致调用堆栈产生的溢出[1]。堆栈溢出的产生是由于过多的函数调用,导致调用堆栈无法容纳这些调用的返回地址,一般在递归中产生。堆栈溢出很可能由无限递归(Infinite recursion)产生,但也可能仅仅是过多的堆栈层级。

       

        栈溢出是由于C语言系列没有内置检查机制来确保复制到缓冲区的数据不得大于缓冲区的大小,因此当这个数据足够大的时候,将会溢出缓冲区的范围。

【笔试与面试】极致游戏与福富软件

 

无限递归

无限递归是堆栈溢出的最常见原因,如以下的C/C++语言程序会产生堆栈溢出:

查了下,感觉理解得比以前透彻了!

——————————————————————————-

第二个,就是二叉树的问题,而且是最简单的一个,现场一急居然答不上来!具有N个节点的完全二叉树的深度为问题,当我走出面试间,我才恍然大悟,[log2(n)]+1,大二上学的东西,之后就一直没用上,忘了。真是丢了我们学校的脸!惭愧!

后记: 极致游戏 笔试 PASS 一轮面试 FAILD

             福富软件  笔试PASS  一轮面试 未参加

文章知识点与官方知识档案匹配,可进一步学习相关知识算法技能树首页概览33912 人正在系统学习中

来源:清天灵月

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2012年9月11日
下一篇 2012年9月12日

相关推荐