Book – Journey with Go Through the World of Data Structures

The book “Journey with Go Through the World of Data Structures”, the second joint work by Amir Shokri and Mohammad Mani Shokri, is a concise yet practical guide designed to turn fundamental concepts of data structures and algorithms into hands-on, executable knowledge using the Go programming language. With a strongly application-focused approach, the authors introduce each topic step by step and provide runnable code samples that allow readers to immediately test, experiment, and apply what they learn in real-world projects. This direct and compact style makes the book a valuable resource for students, developers, and instructors in programming and computer science.

SKU: 1011 Brand:

20 People watching this product now!

Introduction to Traveling with Go in the World of Data Structures

Traveling with Go in the World of Data Structures, the second collaborative book by Amir Shokri and Mohammad Mani Shokri, is a concise and focused guide that transforms essential concepts of data structures and algorithms into practical, executable knowledge using the Go programming language. The authors follow a hands-on and application-oriented approach, introducing each concept step by step and providing runnable code samples that enable readers to test, experiment, and apply what they learn in real-world projects. This practical and compact format makes the book a valuable resource for students, developers, and instructors in programming and computer science.

 

Why Was Traveling with Go in the World of Data Structures Written?

In the preface, the authors emphasize that modern programming is not just a technical skill but a driving force behind innovation in many industries. From this perspective, learning data structures is essential. The goal of the book is to offer a clear and practical path for quickly understanding and implementing data structures and algorithms in real projects. The intended audience includes computer science students, beginner to intermediate programmers, and instructors who teach technical workshops.

 

Book Structure and Teaching Method

The book follows a step-by-step structure. Each chapter begins with an introduction to the concept, continues with sample code, and ends with practical explanations and analysis. The chapters cover Go fundamentals, basic data types, arrays and slices, stacks and queues, linked lists, trees and binary search trees, graphs, hash maps, and sorting algorithms. This arrangement allows readers to study specific chapters independently or follow the complete learning path from start to finish.

 

Why Go?

The authors clearly explain why they chose Go. Its simple syntax, automatic memory management, strong support for concurrency, and active ecosystem of tools and libraries make it an excellent choice for scalable systems and practical implementations of data structures. The book reviews the basics of the language so readers can run the examples without needing advanced prior knowledge.

 

Chapter by Chapter Overview

Below is a closer look at the key sections of the book. Each chapter offers practical insights that support deeper understanding. For full detail and examples, the book itself is recommended for reading.

 

Go Basics and Primitive Data Types

The book begins by explaining the structure of a Go program, package definitions, functions, variables, and primitive types. It highlights the importance of slices and explains how they differ from arrays. It also introduces the map type as the default structure for implementing hash tables.

 

Arrays, Slices, and Maps

This chapter shows how slice length and capacity affect performance and includes examples of using slices to implement stacks and queues. It also explains how Go maps are used to manage key value pairs.

 

Stacks and Queues

With clear code samples, the authors demonstrate how to implement stacks and queues using slices. The examples explain push, pop, enqueue, and dequeue operations and include notes on handling empty structures.

 

Linked Lists and Pointers

The book explains how to implement linked lists using structs and pointers. It covers adding a node at the beginning of the list, traversing the list, and displaying its content. This chapter is especially useful for understanding memory and references. Complete code with line by line explanations is included.

 

Trees and Binary Search Trees

This chapter introduces basic tree concepts and explains their applications. It then presents a practical implementation of a binary search tree with insert and inorder traversal functions. Recursion examples show how BSTs achieve natural ordering and efficient searching.

 

Graphs and Traversal Methods (DFS and BFS)

The graph chapter begins with adjacency lists and matrices. It then presents practical implementations of depth first search and breadth first search in Go. These examples prepare readers to apply graph traversal to routing problems and network analysis.

 

Hash Maps, Collisions, and Hash Tables

The book explains the importance of hash maps for fast access and introduces collision handling methods such as chaining. A simple hash table implementation is provided, along with notes on performance and collision management. The chapter also demonstrates how Go maps can simplify these operations.

 

Sorting Algorithms and Complexity

The final chapter covers classical sorting algorithms such as bubble sort, selection sort, and quicksort. The authors explain the importance of studying sorting and show how algorithm selection affects time complexity and performance.

 

How to Apply the Book in Practice?

The authors encourage readers to execute and modify the code examples. They recommend typing examples manually, changing inputs, writing simple tests, and designing small problems for each data structure. This method helps readers turn theory into practical skill. The book ends with suggested resources for further study.

 

Using the Book for Teaching

The book is suitable for hands-on workshops. The authors suggest designing a three day course with sessions on Go basics and slices, trees and graphs, and algorithms. Group exercises and small projects can accompany each chapter. Code review sessions based on the book’s examples reinforce learning.

 

Additional Notes

The authors emphasize that learning data structures requires practice and not simple memorization. Using Go introduces readers to real world concepts such as concurrency and memory management. The preface describes the authors’ motivation to promote practical learning and make the path toward software development more accessible.

 

Why You Should Read Traveling with Go in the World of Data Structures?

This book is compact, practical, and ideal for readers who want to convert theoretical knowledge into real programming skills. If you want to learn data structures with Go, run code samples, and apply them in real projects, this book serves as an excellent starting point. Working through the examples and exercises will noticeably improve your programming ability. It is a helpful resource for students, colleagues, and fellow developers.

Book Author

,

Book Edition

First

Release Year

Book Isbn

987-622-89061-0-2

Book Language

Book Pages

66