美文网首页
出题《考察软件工程思维》

出题《考察软件工程思维》

作者: JerodYan | 来源:发表于2020-10-26 20:30 被阅读0次

    题目

    (出题时,请先抹掉考察点部分的内容。)

    问题 1:

    难度系数:容易。

    题目描述:

    给你两个一模一样的玻璃球。这两个球如果从一定高度掉到地上就会摔碎,当然,如果在这个高度以下往下扔,怎么都不会碎,超过这个高度肯定就一次摔碎了。

    现在已知这个恰巧摔碎的高度范围在1层楼到100层楼之间。如何用最少的试验次数,用这两个玻璃球测试出玻璃球恰好摔碎的楼高。

    考察点:

    考察工程师的工程思维方式。只有正确的工程思维,才能称得上是真正的工程师。

    有的方法是使用笨办法,能得到正确的答案,但是效率不高。这种思维在工程实践中会经常遇到。例如本题目,可以从最底层(1层)一层一层地尝试。

    有的方法是凭感觉做试验。比如,预测一下,试一试。比如,跑到 30 层一试,没有碎,再跑到 80 层楼一试,碎了。

    问题 2:

    难度系数:容易。

    题目描述:

    如果你有了上面「问题1」的解答思路,请编程的方式完成。同时,编写相应的单元测试代码。(注:1. 可使用一种你熟悉的语言。 2. 请注明你的程序的编译工具链,以及此程序所需的运行环境,并做简要地原理性说明。3. 你写下的代码会成为最后的生产代码,请仔细一些。)

    考察点:

    软件工程师,除了工程的思维,还要用动手的能力,来实现自己的想法。

    在实现的过程中,要遵循软件编程的各种规范。包括,注释,函数命名,变量命名测试单元。从书写规范可以看出,功底是否扎实。

    问题 3:

    难度系数:一般。

    题目描述:

    如果对于「问题1」而言,你有了最佳的策略。那么,如果这时你有三个玻璃球,而不是两个,那么你如何调整原有的策略,使其重新达到最佳?请写下你的理由。

    考察点:

    如果工程师再能从理论角度来思维这个问题,那么就更好了。如果是真正理解了这道题,会知道第一个球会先在 22 层试验,第二个球要以 4 或 5 为步长,然后第三个球,再做调整。

    其次,我们会察看,这道题的答案与「问题1」的答案的异同,来分析面试者的思维变化是否符合我们对工程师的要求。

    相关文章

      网友评论

          本文标题:出题《考察软件工程思维》

          本文链接:https://www.haomeiwen.com/subject/fiyrxftx.html