初入职场面试的我到处碰壁,以下是我个人对几道面试题的小总结:

  1.一列数字的规则如下:1,1,2,3,5,8,13,21, 34........ 求第30位数字是多少,用递规和非递归两种方法算法实现。

    (1)递归:

  @Test
public void test(){
System.out.println(foo(30));
}
private static int foo(int i) {
if(i<0){
return 0;
}else if(i>0&&i<=2){
return 1;
}else{
return foo(i-1)+foo(i-2);
}
}

递归算法

    (2)非递归:

  private static long Fibonacci(int n)
{
long result = 1; //当n<=2时都返回1
if (n > 2) //当n>2时,利用循环计算
{
long first = 1;
long second = 1;
int i = 0;
n = n - 2; //每次当然要减少两次循环
while (i < n)
{
first = second;
second = result;
result = first + second;
i++;
}
}
return result;
}

非递归(循环)

  2.求1-100之间的和。

 int sum = 0;
for(int i =1; i <=100; i ++)
{
sum += i;
}
System.out.println("1-100之间的和:" + sum);

1-100的和

    使用递归实现:

 private static int add(int param) {
if (param < 100 && param > 0) {
return param + add(param + 1);
} else {
return param;
}
}

递归算法

  3.冒泡排序:1,4,2,3,5,8,6,9

 public void bubbleSort(){
int a[]={1,4,2,3,5,8,6,9};
int temp=0;
for(int i=0;i<a.length;i++){
for(int j=i+1;j<a.length;j++){
if(a[i]>a[j]){
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
for(int i=0;i<a.length;i++) {
System.out.println(a[i]);
}
}

冒泡排序示例

  逻辑思维题

  1.有一个7克的砝码和一个2克的砝码,有一个天平.把140克的盐称三次分成50克和90克.你该如何分?

    (1).先用天平将盐分成两份,每份70克    

    (2).再取其中一份用天平分成两份,每份35克然后其中一个里面放7克的砝码,另一个放2克的砝码,然后从7克砝码的盘里面往外拿盐,拿出5克两个就平衡了.    

    (3).最后两个盘里1个30克,1个35克,将5克加入35克里面,然后将这40克再用天平平均分成两份,每次份20克,将20克加入第一步剩下的那一份70克里面组成90克,剩下的为50克

这是我几场面试总结下来的,希望能对各位有所帮助,也希望各位大神多多指点!

后续还有我遇见的或者面试考到的经典题型我会继续更新。

  你的建议就是我的动力

最新文章

  1. 体验阿里云SSD云盘+ECS(I/O优化)的性能
  2. Android自动化学习笔记之MonkeyRunner:用Eclipse执行MonkeyRunner脚本
  3. JavasSript实现秒转换为“天时分秒”控件和TDD测试方法应用
  4. [Flex] Accordion系列 - Header图标的设置
  5. RFIDler - An open source Software Defined RFID Reader/Writer/Emulator
  6. oracle-11g-配置dataguard
  7. 陈发树云南白药股权败诉真相 取胜仅差三步 z
  8. plsql 高效原则
  9. JuliaSet&amp;MandelBulb @ Maya&amp;KK —— 4亿粒子的测试
  10. jupyter巨好玩-调试代码自动变文档
  11. C# 计算器 如果设置键盘输入的监听事件
  12. 互联网级监控系统必备-时序数据库之Influxdb
  13. 使用django建博客时遇到的URLcon相关错误以及解决方法。错误提示:类型错误:include0获得一个意外的关键参数app_name
  14. 算法题丨3Sum
  15. biaffineparser
  16. JavaScript之浏览器兼容问题与IE(神经病一样的浏览器)
  17. Cpp读文件、CString转String、String转CString
  18. LOJ#6503.「雅礼集训 2018 Day4」Magic[容斥+NTT+启发式合并]
  19. MongoDB入门知识
  20. 20 多继承 MRO 算法 深度优先遍历 super

热门文章

  1. pyinstaller打包总结
  2. Codeforces 982 树边两端点计数偶数连通块 鲨鱼活动最小K最大location 扩展欧几里得方块内光线反射
  3. SugarCRM开发入门
  4. 【HDU2089】不要62
  5. [每日一讲] Python系列:列表与元组
  6. Docker(六):Dockerfile命令详解
  7. Java基础——面试、笔试
  8. LeetCode - 滑动窗口最大值
  9. AOP aspect XML 配置
  10. 导出csv文件(使用a标签)