我有一个C++实习职位的面试。现在,我在我的社区学院学习了四分之三的基本CS类中的两个(在C++中),我们介绍了数组、指针、链接列表、递归等方面的基础知识(主要是Walter的绝对C++书)。
我和面试官通了电话,他说面试将包括树木、散列、排序算法等方面的技术问题。我还有不到一周的时间准备面试。
我怎样才能让自己熟悉上述面试问题的绝对、最基本、最基本的内容呢?
或者,在我上下一节课之前,这只是在浪费我的时间吗?
发布于 2012-01-06 20:15:52
您可以尝试获取有关算法和数据结构的资料。这些东西背后有很多理论,但我不认为他们会在实习时深入问你,所以你不必真正了解这些材料,但至少读过流行算法的介绍,并知道它们是做什么的是有帮助的。
您可能应该知道Bubble排序、合并排序和快速排序是如何工作的(它们是一种流行的排序算法,尽管还有更多)。也许维基百科上的文章足以得到算法。您还应该实现它们。这并不难,它将极大地帮助你理解算法。对于树和Hashmap/Hashtable,也是一样的,尝试理解并实现它们。链接列表属于该类别,也属于典型的数据结构。图算法也很有趣,很可能在对应图的材料中涵盖,但是排序和数据结构可能优先。
面试本身并不是浪费时间。不管结果如何,它都会给你带来经验。除非你辱骂面试官或诸如此类的事情,否则失败也很有可能不会在公司里架起桥梁--你是一名学生,而且在进步的前提下,你总是可以重新申请,前提是你已经努力工作,那时的装备要好得多。
发布于 2012-01-06 20:39:18
无论下周你学到了什么,一定要对面试官诚实。因为这是一个实习的学生,他们不会太苛刻。如果你不能回答他关于你还没学过的东西的问题,就告诉他。但也要做好准备,告诉他你知道什么,你擅长什么。
除此之外,我也认为无论结果如何,这对你来说都是一次很好的经历。最糟糕的事情可能发生在你身上,他们不接受你。那么在下一次面试中,你至少会知道该期待什么。
发布于 2012-01-06 20:38:15
基本到数组,指针,
数组和指针不是C++的基础。std::vector<T>和std::string是C++的基础。如果您不广泛地了解和使用C++标准库,并将其作为C数组的独占替代,大多数情况下也是原始指针(在一些非常特殊的情况下除外),那么您就没有资格成为一个基本的C++用户。如果您发现自己正在处理T[]或数组到指针的衰变,那么您在所有场景中都做错了。
https://softwareengineering.stackexchange.com/questions/128867
复制相似问题