Giter Site home page Giter Site logo

michaladorno / hands-on-data-structures-and-algorithms-with-go Goto Github PK

View Code? Open in Web Editor NEW

This project forked from packtpublishing/learn-data-structures-and-algorithms-with-golang

0.0 2.0 0.0 1.81 MB

Hands-On Data Structures and Algorithms with Go, published by Packt

License: MIT License

Go 99.96% HTML 0.04%

hands-on-data-structures-and-algorithms-with-go's Introduction

Hands-On-Data-Structures-and-Algorithms-with-Go

Hands-On Data Structures and Algorithms with Go, published by Packt

alt text

Subtitle:

Level up Your Core Programming Skills to develop faster and efficient code

Target Audience

This comprehensive book is for developers who want to understand how to select the best data structures and algorithms that will help to solve specific problems. Basic Go programming knowledge would be an added advantage.

Short Description

Hands-On Data Structures and Algorithms with Go covers topics related to simple, advanced and complex concepts in computer programming. The primary objective is to choose a right algorithm and data structures for a problem. This book provides the concepts to compare algorithms complexity and data structures for code performance and efficiency.

Long Description

Golang has been the buzzword for the last 2 years with tremendous improvements being done in the language. Many developers and organizations are slowly migrating to Golang, adopting its fast, lightweight and inbuilt concurrency features. This brings the need to have a solid foundation in data structures and algorithms with this growing language.

This book is for one who wants to learn how to write efficient programs and use the proper data structures and algorithm. The primary focus in this book is how to choose a right algorithm and data structures for a problem. It provides the concepts to compare algorithms complexity and data structures for code performance and efficiency. It will be your companion as it takes you through implementing classic data structures and algorithms in Go, helping you to become a confident Go programmer. You will begin by understanding the basic Data types and Structures in Go. Moving ahead, you will learn the power of linked lists and doubly linked lists in Go. You will then learn to implement the linear data structures such as Stacks and Queues followed by Binary searches, Trees, exploring sorting algorithms and further about Graph algorithms. You will also be introduced to some common data structures used while working with strings followed by the common techniques and structures used in tasks such as preprocessing, modeling and transforming data. Moving a step forward, this book will also teach you how to apply traditional data structures to solve real-world problems such as cryptography, genetic algorithms, memory management, markov chains, search engines, dynamic programming and simulation are presented in the book.

Network Representation, Sparse Matrix Representation, Memory Management, Instance Based Learning, Compiler Translation and Process Scheduling can be implemented using Graphs, List of Lists, AVL Trees, K-D Trees, Ball Trees, Van Emde Boas Trees, Buffer Trees and Red-Black Trees. Reader can come up with solutions related to Shortest Path Analysis, Connectivity Analysis, Route Planning, Markov Chain, Genetic algorithms, Random Walk & Approximation algorithms using Directed & Undirected Graphs, Clustering Graphs, Vectors, Adjacency Matrix & Adjacency Lists.

Key Features

1.Understand common data structures and algorithms, as well as the context in which they are used 2.Use data structures such as arrays, stacks, trees, lists and graphs with real-world examples 3.Learn the functional and reactive implementations of the traditional data structures

What you will learn?

1.See how to improve the application performance using right data structure and algorithm in web and mobile applications. 2.Understand how to solve a particular problem by using appropriate data structure and algorithm. 3.Enumerate solutions to a problem and identify algorithms and data structures after doing the trade-off analysis of costs and benefits. 4.Get a grasp on techniques to write pseudo code for an algorithm and ace in white boarding or interviewing situations. 5.Discover the pitfalls in selecting data structures and algorithms by predicting how fast and efficient is an algorithm or a data structure.

Metadescription

Explore Golang’s Data Structures and Algorithms that will help you Design, Implement, and Analyze Code in Practical/Professional setting.

Author Bio

alt text

Bhagvan Kommadi, Founder, Architect Corner has around 18 years’ experience in the industry ranging from large scale enterprise development to incubating software product startups. He has done Masters in Industrial Systems Engineering at Georgia Institute of Technology (1997) and Bachelors in Aerospace Engineering from Indian Institute of Technology, Madras (1993). He is member of IFX forum and an Individual member of Oracle JCP. He has developed Go language based blockchain solutions in retail, education, banking, and financial services sectors. These blockchain solutions were based on Chain Core (Go language based), Ethereum and Hyper ledger blockchain platforms. He has experience in building high transactional applications using Java, C, C++, C#, Python, Go, Ruby and JavaScript frameworks. He has reviewed books such as Beyond Software Architecture-Creating and sustaining winning solutions by Luke Hohmann and Algorithms of the intelligent Web by Dr. Haralambos (Babis) Marmanis.

hands-on-data-structures-and-algorithms-with-go's People

Contributors

bhagvank avatar zeeyan avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.