转载请联系bigsai公众号。前言现在的面试官是无数开发者的噩梦。能打败面试官的面试官确实不多,因为大部分面试官真的有那些本事。但在面试中,我们这些小幸存者并不能全盘否定,只能做一个突破口——让面试官在某个问题上大放异彩。不,我今天是来分享的。这年头不说算法岗内向,开发岗也有点内向,对开发人员的要求越来越高,面试官也是故意“刁难”。答:你知道为什么吗?你知道原理吗?等等。而且,以前也只有大公司的面试官喜欢问算法。大公司的员工基础都不错,很多甚至有ACM经验或者系统问题解决经验。说说吧,不对,真的是被问到了。在这样一个找素数的过程中,面试官问我算法题,我一点都不奇怪。实现了十大排序原理、复杂度分析、手写代码,还学习了链表和树的各种操作,但是突然很惊讶的面试官想出了一个关于找素数的问题。我来还原一下场景:面试官:你知道怎么找素数吗?我:找素数?面试官:对,就是找素数。我:这个很简单。判断一个数是素数,必须没有两个数(除了它本身和1)相乘等于它。你只需要枚举一下,看看有没有可以被它整除的数。如果存在,那么它就不是质数,如果不存在,那么它就是质数。面试官露出失望的表情,说我说的对,但是我没抓住要点,让我详细解释一下。下面开始我的表演:首先,判断n是否为素数最笨的方法就是枚举[2,n-1]之间是否有可以被n整除的数。如果是,则返回false,不是质数,否则是质数,代码如下:booleanisprime(intvalue){for(inti=2;i
