Google interview book

Source: Internet
Author: User

Lanfeng blog: http://bluesfeng.javaeye.com

Recently, I was called by Google. it feels good. good chat with the interviewer. finally, he gave me some experience in preparing for a Google interview. I will share my experience with you below:


Many non-technical factors will not be mentioned here...


Technical preparations include:


1. Carefully study a Data Structure andAlgorithmEveryProgramMembers know the importance of data structures and algorithms. Why? The main reason is that the classic data structure and algorithm summarize common computer problems. if you are proficient in data structures and algorithms, when you encounter new problems, you can easily locate the problems. For example, this is a problem of graph or tree, then, the system knowledge is used for analysis. to find a solution to the problem. for example, if the interviewer asks you how many colors can be used to fill the provinces in the map of China, you should think of this ???

Therefore, when you encounter a problem, you can immediately locate the data structure/algorithm to be used to solve the problem. This is what the interviewer first wants to see. We recommend a book: Steven skiena's the Algorithm Design Manual

1) algorithm complexity analysis. you must know how to use big O to analyze algorithm complexity. if you do not know this, you will not be able to pass the interview. if you do not know, read the relevant chapter carefully. you can do it!

2) sorting algorithm. you need to know the sorting algorithm. do not sort bubbles. no one actually works during development. you must know at least one Sorting Algorithm of N * log (n. for example, quick sorting.

3) HashTables. You must know how to use Hash Tables. You should know how to use what you are goodProgramming LanguageTo implement a hash table.

4) trees: You need to understand the tree structure, binary tree, BFs, DFS, and other Traversal Algorithms.

5) maps: graphs are very, very, and very important. even if you already think that the image is very important. but in fact, it is more important than you think. you should understand the representation of graphs in memory, such as using objects and pointers and using arrays. at the same time, you also need to understand the graph Traversal Algorithms, their algorithm complexity, and howCode.

6) Other data structures. Try to learn other data structures and algorithms in the book.


2. Mathematics. Some Google interviewers like to ask about Discrete Mathematics, so some preparation is required.


3. Operating System. You always need to know some basic knowledge about the operating system, such as threads and processes and inter-process communication. We recommend a book:Doug Lea's concurrent programming in Java


4. coding. You should be proficient in a programming language, such as C ++ and Java. C.

Lanfeng blog: http://bluesfeng.javaeye.com

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.