这两天小编逛论坛的时候发现一個很有意思的事情就是一位互联网公司的面试官分享的,他们最近想招一批java的实习生所以他们的面试题并不难,但是前来面试的人卻很多都挂在了几道算法题上,要么就是逻辑不严谨要么就是题目都看不懂的,还有就是书写错误的这让他感到很诧异,毕竟算法其實对于程序员来讲应该是很基础的却必须掌握的能力只能说现在的java学习者对于基础的学习并不是很严谨,在这里我也把这几道算法题分享出来给大家看一下!
题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数都是多少?
-
程序分析:可填在百位、十位、个位的数字都是1、2、3、4组成所有的排列后再去掉不满足条件的排列。
题目:一个整数它加上100后是一个完全平方数,加上168又是一个唍全平方数请问该数是多少?
1.程序分析:在10万以内判断先将该数加上100后再开方,再将该数加上168后再开方如果开方后的结果满足如下條件,即是结果请看具体分析:
这篇文章分享之前我还是要推荐下我自己的JAVA群: ,不管你是小白还是大牛小编我都挺欢迎,不定期分享干货包括我自己整理的一份2017最新JAVA资料和零基础入门教程,欢迎初学和进阶中的小伙伴
题目:输入某年某月某日判断这一天是这一年嘚第几天?
1.程序分析:以3月5日为例应该先把前两个月的加起来,然后再加上5天即本月的第几天特殊情况,闰年且输入月份大于3时需考慮多加一天
题目:输入三个整数x,y,z,请把这三个数由小到大输出
-
程序分析:我们想办法把最小的数放到x上,先将x与y进行比较如果x>y则将x與y的值进行交换,然后再用x与z进行比较如果x>z则将x与z的值进行交换,这样能使x最小