4

Classic Computer Science Problems in Java MEAP V04

 4 years ago
source link: https://livebook.manning.com/book/classic-computer-science-problems-in-java?origin=product-look-inside
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
Classic Computer Science Problems in Java MEAP V04 cover
Welcome to liveBook!

This is an online version of the Manning book Classic Computer Science Problems in Java MEAP V04. With liveBook you can access Manning books in-browser — anytime, anywhere.

welcome

Dear Reader,

Thank you for purchasing early access to Classic Computer Science Problems in Java. Java is a popular language that attracts developers from a variety of backgrounds. I believe the problems in this intermediate book will help seasoned programmers refresh their CS knowledge, and new/self-taught programmers accelerate their CS education. All readers will deepen their skills in the Java language. This book covers such a diversity of problem-solving techniques, that there is truly something for everyone. However, basic knowledge of the Java language is assumed. This is a great second book on Java, but not a book for complete beginners.

Chapter 1, Small Problems, introduces problem solving techniques that will likely look familiar to most readers. Things like recursion, memoization, and simulation are essential building blocks of other techniques that are explored in later chapters. We follow this gentle introduction with Chapter 2, Search Problems. Search is such a large topic that you could arguably place most problems in the entire book under its banner. Our goal in chapter 2 is to introduce the most essential search algorithms including binary search, depth-first search, breadth-first search, and A*. Some of these algorithms are reused later in the book.

In Chapter 3, Constraint Satisfaction Problems, we build a framework for solving a broad range of problems that can be abstractly defined by variables of limited domains that have constraints between them. This includes such classic problems as The Eight Queens Problem, The Australian Map Coloring Problem, and the crypto-arithmetic SEND+MORE=MONEY.

Chapter 4, Graph Problems, explores the world of graph algorithms, which to the uninitiated are surprisingly broad in their applicability. In the chapter, we build a graph data structure and then use it to solve several classic problems. Chapter 5, Genetic Algorithms, explores a technique that is less deterministic than most covered in the book, but sometimes can solve a problem traditional algorithm cannot in a reasonable amount of time.

Chapter 6, K-Means Clustering, is perhaps the most algorithmically specific chapter in the book. This clustering technique is simple to implement, easy to understand, and broadly applicable. Chapter 7, Fairly Simple Neural Networks, aims to explain what a neural network is, and give the reader a taste of what a very simple neural network looks like. It does not aim to provide comprehensive coverage of this exciting and evolving field.

Chapter 8 looks at Adversarial Search techniques for creating artificial opponents for 2-player perfect information games like checkers, chess, and connect four. Finally, Chapter 9, Miscellaneous Problems, covers interesting (and fun) problems that didn’t quite fit anywhere else in the book.

Please note that since the book is still in development, you will be joining me on this exciting journey. I look forward to your feedback which can be left in the liveBook Discussion forum

Thank you again,

—David Kopec ([email protected])


Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK