Interview email questions: We consider non-Computer Science majors who have good PC hands-on skills as well. The quality of answers is important. It is OK to skip some questions. 可以用中文回答.
I) Computer operations
1. List troubleshooting steps if your Windows is unable to boot.
2. A Windows PC takes 4 minutes to complete booting. What can be done to reduce the booting time to 1 minute?
3. List troubleshooting steps if your PC is unable to access Internet. It was working yesterday.
4. If a PC is installed Linux, describe steps to install Windows on the same PC and test it.
II) Computer science
5. How to calculate the execution time of a simple instruction “a=3” without writing a program?
6 Data can be manipulated by values or references. Why objects use reference, not value?
III) Programming and design
7 How to write code to delete a specific node in a single link list （单链表）that takes O(1) time? That is, the time deleting a node is the same (independent from the length of the list.) Link list uses pointers,
not hash. Input is a pointer of the deleting node. Show your algorithm with pseudo code. Hint: just 3 steps.
8a If class A needs to inform class B about an important event, what java/C++ technique can you use? A and B can be in the same thread, different threads, or different processes. List as many as you can.
8b Assume class A generates random integers between -100 and 100 at a random frequency between 0 and 2 seconds. Class B implements a counter which decrements each time class A generated a negative integer and increments each time class A generated a positive integer. Class B’s counter needs to be updated in real time as class A generates numbers.
i) Show pseudo code for one or more of these scenarios: A and B are in the same thread, different threads, and different processes.
ii) Bonus: Show different ways to handling each scenario.
9 In a simple game, a ball is rolling over a line from the left end toward the right end.
Show uml class diagram and pseudo code.
Deliverable: uml class diagram