Internal push is recommended by the road on the surface of the bubble, we can pay attention to the public number of the road, the above provides the company's internal push and school recruit information
First written test, choose nothing to say (also can't remember), basically are some basic problems, data structure, database, computer network, operating system,
Algorithm good basic can answer. The last two questions of the written test are programming questions:
1. Implement the Atoi function yourself, considering only integers
function function is to convert a string into an integer and return it. It is very simple to consider the whole number of questions, and no further consideration is required. The main consideration is the negative situation can be.
2. Implement a function complete arithmetic, including +-*/()
Learn the data structure when wrote, at that time can not think of algorithms, feel very troublesome to give up after thinking of the algorithm of their own manual implementation
The specific algorithm is:
I. Convert the input calculation (infix expression) to a suffix expression (saved with a queue) to scan infix expressions:
1. Hit the numbers on the team
2. Encountered operation Mr. Foo judge the top of the stack in the symbol priority is higher than the current, if the top of the symbol stack popup and queue, otherwise the current operator into the stack
3. Encounter the parentheses directly into the stack, encounter the back bracket to pop the top of the stack and queue until the top of the stack element is a positive bracket (pop, do not queue)
4. After the scan is finished, the remaining symbols of the symbol stack are ejected and merged into the team
Two. Using a digital stack to process the suffix expression, the number in the final digital stack is the answer
Scan the suffix expression saved with the queue:
1. Enter the stack when you hit the number
2. When the symbol is encountered, the number stack pops up two operands, and the result is counted into the stack.
3. After the scan is over, the element at the top of the digital stack is the answer
And then it's the face type:
Start by introducing the project, then ask a few questions
Do you know Android architecture
I don't know.
What are the four components used in the development of enterprise production management system
Button Label ... (after being corrected, I know it's activity, etc.)
Have you developed a game independently with cocos2d?
No..
Is there any experience in driving development?
No..
Then there are some specific questions (no sequencing, individual answers, please correct me)
What libraries are available in the 1.boost library
Arry Library, function library, bind library, thread library, etc.
2. The difference between an array and a pointer
The array name is equivalent to a pointer, but cannot be changed to point, and the pointer can modify the contents of the
The size of the array name can be calculated to calculate the size of the whole, the size of the pointer can only find the size of the pointer
3. When the heap and stack are used in each case
Heap is the programmer manual management, the stack is the system automatic management
Heap space larger than stack, if you need to apply for large space need to use heap
The life cycle of a heap is the entire program, and the life cycle of the variables in the stack is inside the function, if the memory wants to use the heap outside of the function
What does 4.java reflection say about a use of reflection?
The object can be used to get all the information about the object, including the class name, member, method, return value, etc., when the hibernate framework is stitching the SQL statement
Need to use reflective technology
The difference between abstract classes and interfaces in 5.java
Interfaces only provide methods for other classes to override, and abstract classes can define variables and implementation methods
Interfaces allow Java to implement multiple inheritance, abstract classes for single inheritance
6. What are the algorithms for thread scheduling (it is estimated that he wants to ask the process scheduling algorithm)
First come first service shortest task priority time slice rotation feedback scheduling
7. The difference between multi-process and multi-threading
The process is the smallest unit of CPU resource allocation, the thread is the resource of the shared process, and the process switching cost is higher than the thread switching.
8. How to implement a one-to-many communication
TCP protocol-based network communication can achieve a one-to-many communication, the server is blocked waiting for client connections, the client each connection with a socket
Processing. That is, multiple clients communicate with one server
9.TCP Disconnect Why do I need to wave four times
TCP is a duplex communication, and either side disconnects and needs to send a message and ask for confirmation, so a total of four waves are required
10. What are the methods of inter-process communication?
Message Queuing mailbox Pipeline shared memory
11. The difference between the semaphore and the mutex
The mutex can only be accessed by one thread at a time, and the semaphore sets the upper limit for simultaneous access by the thread
12. What are some classic books to recommend
Introduction to C++primer algorithm
13. What websites do you usually like?
CSDN Baidu
14. What are the questions you need to ask?
Working contents overtime of male and female ratio problem
(Most of the above problems may be omitted)
After the interview personally feel good, basically asked to answer most of the questions, but the project that part of the problem a bit miserable originally thought that the personal report C + + (Android problem) or students (drive development), these questions can not be affected is not very big should be able to cross this round of interview, did not think or kneel, Or because the answer is not sufficient. In short, I feel that every question should be answered very well to interview = =. The road to famous enterprises is really difficult.
CVTE Internal Push interview (C + +)