An introduction to the theory of computer science for those who enjoy the challenge of solving problems and puzzles involving logic, reasoning and imagination. The author's intent is to inspire the reader to learn how to think about problems in an abstract way, and to explore the different ways information can be modelled and processed to create algorithmic and computational solutions which can be expressed in pseudocode and coding languages.
This book is also recommended as a student guide for the VCE subject Algorithmics (HESS) Units 3/4 2023-2028 study design in the VCE curriculum and covers the key skills and required knowledge from the Victorian Curriculum and Assessment Authority (VCAA) study guide.
The text includes many examples and exercises with fully worked solutions to develop understanding of the theories presented. There is no assumption that the reader has prior experience with coding in any programming language, however the reader is encouraged to implement their algorithms using a simple programming language.
The following coding languages are used for detailed examples throughout this Snap! developed by The University of California, Berkeley, USA. SnapApps/Edgy (includes extensive graph functionality) developed by Melbourne University, Australia Python3 using the NetworkX and Matplotlib libraries (for graph functionality) in the Trinket online coding environment
IMPORTANT NOTICE TO This is the ** COLOUR HARDCOVER EDITION which is in colour, with a hardcover, 246 pages**, a paperback black and white edition is also available.