• 来自(乐唯科技)的面试问题..


    面试之道---面试感慨

    又到了一年一度的毕业季,博主也如此,面临着找工作的困境,由于学艺不算太精通,面试的过程中屡败屡战,当面试官说出那句:“你回去等通知吧,我们大概会在两、三天之内会给你回复,刚开始听到这句话时,会觉得自己还有希望,于是抱着一点希望静静的等待,到后来才发现,原来我只是一个备胎。

    面试之道---公司介绍

    首先,面试之前你得了解这个公司的背景,以及公司的业务等相关的问题。

    “对面”是一款领先新型的游戏化社交产品,隶属于深圳市乐唯科技开发有限公司。

    深圳市乐唯科技开发有限公司,设立于2011年,是一家年轻而充满朝气和活力的高科技技术创新型企业,管理层以及员工主要以80后、90初为主,发展迅猛,致力于手机应用、游戏等产品的开发,涉足iphone,android主流手机操作平台!我们有着深厚的手机软件开发的技术积累,以及强大的产品创新能力!立志为广大用户提供最优秀和便捷的移动互联网软件产品和服务。

    面试之道---公司印象

    面试的这家公司是位于深圳繁华软件的集中区域---南山软件基地,开始进入此大厦的时候,还需要身份证登记,如果有要去这家公司面试的小伙伴,请携带好自己的身份证,之后上了电梯,向右一看,”嘿,对面的你“(Ps:因为乐唯科技主要是弄游戏社交平台的),我当时的第一反应是,约吗? 额。。。 之后进入了公司里,这公司总体来说还是不错的,公司的前台是一个圆形的鹅蛋布局,前台妹子也不错︿( ̄︶ ̄)︿  

    面试之道--面试问题

    面试问题1:

    如何实现一个单例模式? 

     1 //懒汉式单例类.在第一次调用的时候实例化自己   
     2 public class Singleton {  
     3     private Singleton() {}  
     4     private static Singleton single=null;  
     5     //静态工厂方法   
     6     public static Singleton getInstance() {  
     7          if (single == null) {    
     8              single = new Singleton();  
     9          }    
    10         return single;  
    11     }  
    12 }

    以上是一个简单的单例模式的demo.

    面试问题2:

    如何实现一个线程池?(这里我以单线程池作为案例)

     1 public class TestSingleThreadExecutor {
     2     publicstaticvoid main(String[] args) {
     3         //创建一个可重用固定线程数的线程池
     4         ExecutorService pool = Executors. newSingleThreadExecutor();
     5         //创建实现了Runnable接口对象,Thread对象当然也实现了Runnable接口
     6         Thread t1 = new MyThread();
     7         Thread t2 = new MyThread();
     8         Thread t3 = new MyThread();
     9         Thread t4 = new MyThread();
    10         Thread t5 = new MyThread();
    11         //将线程放入池中进行执行
    12         pool.execute(t1);
    13         pool.execute(t2);
    14         pool.execute(t3);
    15         pool.execute(t4);
    16         pool.execute(t5);
    17         //关闭线程池
    18         pool.shutdown();
    19     }
    20 }

    代码调用部分,这里我创建了一个MyThread的类

    1 publicclass MyThread extends Thread {
    2     @Override
    3     publicvoid run() {
    4         System.out.println(Thread.currentThread().getName() + "正在执行。。。");
    5     }
    6 }

    代码执行结果:

    pool-1-thread-1正在执行。。。
    pool-1-thread-2正在执行。。。
    pool-1-thread-1正在执行。。。
    pool-1-thread-2正在执行。。。
    pool-1-thread-1正在执行。。。

    面试问题3:

    10进制的100位进行累加如何实现?

    首先,博主数学是渣,对于什么数据结构,算法什么的无感,还有进制这些也不是很了解,所以当时面试的时候就陷入了一种懵逼状态  ..(ˇˍˇ) 想~ ,但是博主还是热爱学习的好孩子,迫于下次面试遇到类似的问题,我还是得去研究,研究,在研究。。

    这是10进制的100位的算法

    100÷2=50。。。。余0
    50÷2=25。。。。余0
    25÷2=12。。。。余1
    12÷2=6。。。。余0
    6÷2=3。。。。余0
    3÷2=1。。。。余1
    1÷2=0。。。。余1
    把余数倒过来排列即是十进制100转二进制。
    即十进制100转二进制是1100100

    下面的代码是博主想出的解决方案,如有什么地方有问题的话,可以在评论的下方提出解决方案:

     1 package com.pb.entity;
     2 
     3 public class Test {
     4     public static void main(String[] args) {
     5         //定义字符进行进制的累加
     6         String str = "";
     7         //初始化变量是从100开始的
     8         int num=100;
     9         while(true){
    10             //对余数进行累加
    11             str+=num%2;
    12             //保证num的值是变化的
    13             num = num/2;
    14             //加入判断,遍历完变量之后退出循环
    15             if(num==0){
    16                 break;
    17             }
    18         }
    19         //逆序读取字符串中的数据
    20         System.out.println("最后的结果是:"+new StringBuilder(str).reverse().toString());
    21     }
    22 }

     最后的输出结果:

    最后的结果是:1100100

    面试之道---面试总结

    通过这两次的面试我明白了,常问的知识点有:设计模式(单例、代理、工厂、观察者...等模式)、框架(spring、mybatis、ibatis、struts、hibernate ...)、数据库(mysql、sql server、oracle)会问一些sql和存储过程、其次是前端的一些技术:如js、jquery、ajax、json以及h5+css的使用..  也希望能够给正在面试的小伙伴们带来一些帮助。

    作者:薛之段王爷

    博客:http://home.cnblogs.com/u/xzdwy-b/(转载请注明)

     
  • 相关阅读:
    react native( rn) 中关于navigationOptions中headerRight 获取navigation的问题 rn
    string与number转换
    基础面试资料
    vim快捷键大全
    Vim中的自定义快捷键
    去掉ubuntu命令行模式提示声
    模板非类型形参的详细阐述
    C++中为什么构造函数不能定义为虚函数
    C++ 深入理解 虚继承、多重继承和直接继承
    C++ 虚函数表解析
  • 原文地址:https://www.cnblogs.com/xzdwy-b/p/5710556.html
Copyright © 2020-2023  润新知