As an experienced JavaScript developer moving to server-side programming, you need to implement classic data structures and algorithms associated with conventional object-oriented languages like C# and Java. This practical guide shows you how to work hands-on with a variety of storage mechanismsincluding linked lists, stacks, queues, and graphswithin the constraints of the JavaScript environment.
Determine which data structures and algorithms are most appropriate for the problems you're trying to solve, and understand the tradeoffs when using them in a JavaScript program. An overview of the JavaScript features used throughout the book is also included.
This book covers:
Arrays and lists: the most common data structures
Stacks and queues: more complex list-like data structures
Linked lists: how they overcome the shortcomings of arrays
Dictionaries: storing data as key-value pairs
Hashing: good for quick insertion and retrieval
Sets: useful for storing unique elements that appear only once
Binary Trees: storing data in a hierarchical manner
Graphs and graph algorithms: ideal for modeling networks
Algorithms: including those that help you sort or search data
Advanced algorithms: dynamic programming and greedy algorithms