zoukankan      html  css  js  c++  java
  • 记在《面试@Taobao》后

        个人觉得Taobao面试比Alibaba更有技术含量一些,同样也是分为两面,但是这次的确比较心虚,因为笔试的算法部分写的那个叫惨不忍睹,主要是改了又改……

        一面:开场同样是自我简介(貌似这是不变的定律),完了之后让我写了个字符串的hash函数,主要是考考代码能力吧,写了个类似BKDRHash函数的hash,然后给他解释了一番,之后貌似就没再扯什么技术,主要是扯项目上面的一些话题……

        二面:囧了,与Alibaba不同,Taobao所有的问题貌似都集中在二面了,比较难缠……

            问题一:一个LCA(最近公共主先问题),就是给你树中的俩个节点,求他们的最近公共主先……

            对于这个问题,其实有过ACM经历的都知道,典型的离线处理Tajian算法,在查询数比较多的情况下可以考虑这个,但是查询数不过得话,可以从这俩节点依次往上走就行(最水的方法)……

            问题二:让我实现C++ STL中的map……

            这个实际上其内部实现是红黑树什么之类的云云(实在记不太清),我就扯了以key来建立一个BST,因为这个存在退化,可以考虑平衡树什么之类的平衡技巧……总之感觉自己答的不够深刻……

            问题三:现在有两个类:

    View Code
    1 class A
    2 {
    3 int iAa;
    4 A()
    5 {
    6
    7 }
    8 };
    9
    10  class B : A
    11 {
    12 int iBb;
    13 B()
    14 {
    15
    16 }
    17 };

            现在用B定义一个变量b,在这过程中,在有A分配空间、调用A构造函数、B分配空间、调用B构造函数这四步,问起准确顺序……这个大家都知道的……

            问题四:一个IR系统应包含哪些模块……

            这个问题,主要是我扯的项目跟这个有关,估计她就随口问了吧,(PS:我们刚刚考过IR),所以还是背过……总之肯定是UI、查询处理、文本处理、建索引、搜索、结果排序……

            问题五:问下面这两种定义方式有什么不同?

    View Code
    1 char ch;
    2  char * p = (char *)malloc(1);

            首先可以从编译器的角度,对于第一个变量ch的引用是直接引用其内容,但是对于变量p,由于它是指针类型,是取其内容作为地址再去内容,多了一级……

            另外,考虑存储空间,如果它们都处在局部函数内,ch和p肯定都在栈中,但是p所指向的空间是在堆中……

        差不多就这些问题了,其他的都是些没用的,平时上什么网啊、班级有没有同学来面试的啊之类云云……

        然后就木有了,等通知……希望没有悲剧……

  • 相关阅读:
    关于Servelet在Tomcat中执行的原理
    类变量被final修饰编译时结果确定变为宏
    本地无法连接远程服务器(Host is not allowed to connect to this MySQL server)解决办法(Windows)
    leetcode_227. 基本计算器 II
    leetcode_150. 逆波兰表达式求值
    leetcode_145. 二叉树的后序遍历
    leetcode_144. 二叉树的前序遍历
    leetcode_94. 二叉树的中序遍历
    leetcode_71. 简化路径
    1598. 文件夹操作日志搜集器
  • 原文地址:https://www.cnblogs.com/debugcool/p/InterviewTaobao.html
Copyright © 2011-2022 走看看