Learning JavaScript Data Structures and Algorithms

How data structures and algorithms solve programming issues

   Watch Promo

Key features

  • Discover how to implement complex data structures such as linked lists, stacks, queues, graphs, and trees using vanilla JavaScript
  • Get a good understanding of basic and advanced structures and algorithms
  • Master new and upcoming native data structures in ES6 and ES7
  • Understand algorithm analysis and implementation to resolve common programming problems


Topic

As businesses collect increasing amounts of vital data, the need to structure software components increases every day. Using appropriate data structures and having a good understanding of algorithm analysis is key to writing maintainable and extensible quality software, thus solving the crisis.


Learning JavaScript Data Structures and Algorithms will show you how to organize your code with the most appropriate data structures available to get the job done fast, and in a logical way that is easy to maintain, refactor, and test. By using effective data structures, you can take advantage of advanced algorithms, thus making your web applications more powerful and scalable. You will learn about common software engineering data structures, such as linked-lists, trees, and graphs, and get to know how to implement them in JavaScript. You’ll also master ways to use them in various types of algorithms.

You will begin by finding out how to build on native JavaScript constructs, and create collections such as maps, queues, stacks, sets, graphs, and other data structures. You will then discover how to develop, analyze, and improve algorithms to search deep trees, lists, and other complex collections, as well as sorting containers of data.

This practical course will guide you through a web application development cycle using a structured and disciplined approach, focusing on accuracy and efficiency as you build quality software.


What you will learn from this video course

  • Master existing JavaScript collections such as arrays, sets, and maps
  • Develop abstract data types to extend JavaScript into a more flexible and powerful programming language
  • Grasp the basics of software engineering to differentiate yourself from undisciplined coders
  • Conjure powerful algorithms to traverse dense graphs and trees in the least possible steps
  • Devour the science of comparing different algorithms to choose the best one for the respective task
  • Search and sort native and custom data types through collection iterator methods
  • Create complex abstract data types by reusing existing classes



Who this video course is for

If you are a web developer with a good grasp of the fundamentals of JavaScript, and you are confident with the essentials but want to delve deeper and understand data structures and algorithms, then this course is for you. The course does not talk about graph theory, set theory, and other advanced mathematical concepts, so no prior knowledge of advanced mathematical concept is necessary.

Style and approach

In this course, every step is demonstrated on screen and explained practically, so you can effectively apply the techniques to your own projects. Learning the “why” behind each task is the key to being able to implement what you learn, and is emphasized in every stride along the way.



Author biography
Rodrigo Formigone Silveira is a software engineer at Deseret Digital Media. There, he divides his time developing in PHP, JavaScript, and Java for Android. Some of his hobbies outside of work include blogging and recording educational videos about software development, learning about new technologies, and finding ways to push the web forward.

Rodrigo received his Bachelor's of Science in Computer Science from Brigham Young University, Idaho, as well as an Associate's Degree in Business Management from LDS Business College in Salt Lake City, Utah.

His fascination for game development began in his early teenage years, and his skills grew as he discovered the power of a library subscription. He has a curious and willing mind, with understanding and supporting parents and friends.

Today, Rodrigo balances his time between the three great passions of his life—his family, software development, and video games (with the last two usually being mingled together).

Author Acknowledgements:

I wish to thank my best friend and the love of my life, Lucimara, for supporting me in my many hobbies, her endless wisdom, and her contagious love of life. I also wish to thank my daughter, Samira, who makes each day shine brighter, as well as the latest addition to the team, my son, Juliano, who makes the world a better place by being an exciting part of it.


Your Instructor


Packt Publishing
Packt Publishing

Over the past ten years Packt Publishing has developed an extensive catalogue of over 3000 books, e-books and video courses aimed at keeping IT professionals ahead of the technology curve. From new takes on established technologies through to the latest guides on emerging platforms, topics and trends – Packt's focus has always been on giving our customers the working knowledge they need to get the job done. Our courses continue this tradition, bringing you comprehensive yet concise screencast tutorials straight from the experts.


Frequently Asked Questions


When does the course start and finish?
The course starts now and never ends! It is a completely self-paced online course - you decide when you start and when you finish.
How long do I have access to the course?
How does lifetime access sound? After enrolling, you have unlimited access to this course for as long as you like - across any and all devices you own.
What if I am unhappy with the course?
We would never want you to be unhappy! If you are unsatisfied with your purchase, contact us in the first 30 days and we will give you a full refund.

Get started now!