面试总结

来源:互联网 发布:淘宝网武笙缘太极服 编辑:程序博客网 时间:2024/06/05 14:42

招银网络科技,9月14电面

  1. Java接口和抽象类的区别
  2. 堆排序

  • Java接口是interface定义,抽象类是abstract class定义
  • 子类用extends关键字来继承抽象类。用implements关键字来实现接口。
  • 一个类只能继承几个抽象类,而一个类可以实现多个接口.
  • 抽象类可以有构造器,接口不可以有构造器
  • Java接口和抽象类最大的区别就是,抽象类可以提供某些方法的部分实现,而接口不可以。就是说,接口里只能定义方法,不能有方法的实现,而抽象类里面即有方法的具体实现,又可以有没有实现的抽象方法。如果你往抽象类里面添加新方法,你可以给他提供默认的实现,那么它所有的子类都得到了这个方法。而如果你往接口里面添加新方法,你必须修改所有继承了该接口的类。
  • 一个抽象类的实现只能由这个抽象类的子类给出,也就是说,这个实现处在抽象类所定义出的继承的等级结构中,而由于Java语言的单继承性,所以抽象类作为类型定义工具的效能大打折扣. 所有实现了一个java接口的类都具备了这个接口的类型,而一个类可以实现多个接口,因此这个类就有了多种类型.

用户流失模型

  1. 如何定义用户流失
    时间跨度不适用的区别
  2. 关于用户流失的区别对待
    1、获取期:新用户,通过活动、广告等方式第一次来体验产品,尝鲜类型
    2、提升期:有复购行为的用户,这类用户已经和我们建立了较为亲密的关系
    3、成熟期:不仅存在复购,还会交叉购买其他我司产品,这类让我们心中愉悦的用户真是黄金用户
    4、衰退期:开始渐渐消退了购买行为和浏览频率,这里是最需要预警的阶段
    5、离开期:达到流失用户标准的用户
  3. 哪一些用户是挽回应该首当其冲的
    R——Recency 用户最近一次消费时间
    F——Frequency 用户在限定的期间内所购买的次数
    M——Monetary 用户在限定时间内购买的金额
  4. 模型落地
    用户流失模型

银联面试(10.14)

  1. java Object类中所有的方法
    Java Object类
  2. hashCode()的实现
    hashCode()方法
  3. 面向对象和函数式编程的各自特点和优缺点
  4. spark中map与flatmap的区别
    map是将rdd中每个元素逐一进行元素变换映射成另外一个rdd;
    flatMap也是应用与rdd中的每一个元素,将返回的迭代器或者集合的所有内容展开合成一个新的rdd。
    map和flatMap区别
  5. 红黑树的作用和实现