你的认同是对我最大的赞美。

那些年我们经历的BT面试题

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

 

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

    (1)递归: 

 1  @Test
 2 public void test(){
 3     System.out.println(foo(30));
 4 }
 5 private static int foo(int i) {
 6     if(i<0){
 7         return 0;
 8     }else if(i>0&&i<=2){
 9         return 1;
10     }else{
11         return foo(i-1)+foo(i-2);
12     }
13 }
递归算法

    (2)非递归:

 1  private static long Fibonacci(int n)
 2 {
 3      long result = 1; //当n<=2时都返回1
 4        if (n > 2)          //当n>2时,利用循环计算
 5        {
 6              long first = 1;
 7              long second = 1;              
 8              int i = 0;
 9              n = n - 2;      //每次当然要减少两次循环
10         while (i < n)
11         {
12              first = second;
13              second = result;
14              result = first + second;
15              i++;
16           }
17          }
18         return result;
19 }
非递归(循环)

 

 

  2.求1-100之间的和。

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

    使用递归实现:

1 private static int add(int param) {
2         if (param < 100 && param > 0) {
3             return param + add(param + 1);
4         } else {
5             return param;
6         }
7     }
递归算法

 


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

 1 public void bubbleSort(){  
 2     int a[]={1,4,2,3,5,8,6,9};  
 3     int temp=0;  
 4     for(int i=0;i<a.length;i++){  
 5        for(int j=i+1;j<a.length;j++){  
 6             if(a[i]>a[j]){  
 7            temp=a[i];  
 8            a[i]=a[j];  
 9            a[j]=temp;  
10        } 
11     }  
12     for(int i=0;i<a.length;i++)  {
13         System.out.println(a[i]);     
14    }
15 }
冒泡排序示例

 

  逻辑思维题

  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克

 

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

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

 

  你的建议就是我的动力

 

posted @ 2017-03-06 19:38  Tony_copper  阅读(230)  评论(0编辑  收藏  举报
 Tony