This book collects about 60 topics on algorithm and programming. Most of these topics have appeared in Microsoft's written tests and interviews, and some have been discussed enthusiastically by Microsoft employees. The author tries to start from various interesting problems in the book, guide readers to discover problems, analyze problems, solve problems, and find better solutions. This book is divided into the following parts.
• The joy of games: Starting from games and other interesting problems, simplifying the complex, analyzing and summarizing.
• The magic of numbers: The process of programming is actually the process of dealing with numbers and characters. This section collects some fun numbers-crunching problems.
• The method of structure: brings together the common problems of operating on strings, linked lists, queues, and trees.
• Mathematical Interests: Lists some mathematical problems that do not require writing specific programs to exercise readers' abstract thinking ability.
Most of the topics in this book provide detailed explanations. Each topic is followed by one or two extended questions for readers to delve further into.
The book also tells various short stories about interviews, tells readers what kind of technical talents Microsoft needs, what kind of abilities they value, how to screen talents, and answers readers' questions about interviews, recruitment, and career development in the IT industry. Many of these topics will appear in various written tests and interviews in the IT industry, but the deeper meaning of this book is to guide readers to think and share the joy of thinking and the beauty of programming with readers.