Learning JavaScript Data Structures and Algorithms - Third Edition

Create classic data structures and algorithms such as depth-first search and breadth-first search, learn recursion, as well as create and use a heap data structure using JavaScript
Preview in Mapt

Learning JavaScript Data Structures and Algorithms - Third Edition

Loiane Groner
New Release!

Create classic data structures and algorithms such as depth-first search and breadth-first search, learn recursion, as well as create and use a heap data structure using JavaScript
Mapt Subscription
FREE
$29.99/m after trial
eBook
$25.20
RRP $35.99
Save 29%
Print + eBook
$44.99
RRP $44.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$25.20
$44.99
$29.99 p/m after trial
RRP $35.99
RRP $44.99
Subscription
eBook
Print + eBook
Start 14 Day Trial

Frequently bought together


Learning JavaScript Data Structures and Algorithms - Third Edition Book Cover
Learning JavaScript Data Structures and Algorithms - Third Edition
$ 35.99
$ 25.20
Understanding Software Book Cover
Understanding Software
$ 23.99
$ 16.80
Buy 2 for $34.30
Save $25.68
Add to Cart

Book Details

ISBN 139781788623872
Paperback426 pages

Book Description

A data structure is a particular way of organizing data in a computer to utilize resources efficiently. Data structures and algorithms are the base of every solution to any programming problem. With this book, you will learn to write complex and powerful code using the latest ES 2017 features.

Learning JavaScript Data Structures and Algorithms begins by covering the basics of JavaScript and introduces you to ECMAScript 2017, before gradually moving on to the most important data structures such as arrays, queues, stacks, and linked lists. You will gain in-depth knowledge of how hash tables and set data structures function as well as how trees and hash maps can be used to search files in an HD or represent a database. This book serves as a route to take you deeper into JavaScript. You’ll also get a greater understanding of why and how graphs, one of the most complex data structures, are largely used in GPS navigation systems in social networks.

Toward the end of the book, you’ll discover how all the theories presented in this book can be applied to solve real-world problems while working on your own computer networks and Facebook searches.

Table of Contents

Chapter 1: JavaScript – A Quick Overview
JavaScript data structure and algorithms
Setting up the environment
JavaScript basics
Debugging and tools
Summary
Chapter 2: ECMAScript and TypeScript Overview
ECMAScript or JavaScript?
ECMAScript 2015+ functionalities
Introducing TypeScript
Summary
Chapter 3: Arrays
Why should we use arrays?
Creating and initializing arrays
Adding elements
Removing elements
Adding and removing elements from a specific position
Two-dimensional and multi-dimensional arrays
References for JavaScript array methods
The TypedArray class
Arrays in TypeScript
Summary
Chapter 4: Stacks
Creating a JavaScript data structure and algorithm library
The stack data structure
Creating a JavaScript object-based Stack class
Protecting the internal elements of the data structure
Solving problems using stacks
Summary
Chapter 5: Queues and Deques
The queue data structure
The deque data structure
Solving problems using queues and deques
Summary
Chapter 6: Linked Lists
The linked list data structure
Doubly linked lists
Circular linked lists
Sorted linked lists
Creating the StackLinkedList class
Summary
Chapter 7: Sets
Structuring a dataset
Creating a Set class
Set operations
ECMAScript 2015 – the Set class
Multisets or bags
Summary
Chapter 8: Dictionaries and Hashes
The dictionary data structure
The hash table
The ES2015 Map class
The ES2015 WeakMap and WeakSet classes
Summary
Chapter 9: Recursion
Understanding recursion
Calculating the factorial of a number
The Fibonacci sequence
Why use recursion? Is it faster?
Summary
Chapter 10: Trees
The tree data structure
Tree terminology
The binary and binary search trees
Tree traversal
Searching for values in a tree
Self-balancing trees
Summary
Chapter 11: Binary Heap and Heap Sort
The binary heap data structure
The heap sort algorithm
Summary
Chapter 12: Graphs
Graph terminology
Representing a graph
Creating the Graph class
Graph traversals
Shortest path algorithms
Minimum spanning tree (MST)
Summary
Chapter 13: Sorting and Searching Algorithms
Sorting algorithms
Searching algorithms
Shuffle algorithms
Summary
Chapter 14: Algorithm Designs and Techniques
Divide and conquer
Dynamic programming
Greedy algorithms
Backtracking algorithms
Introduction to functional programming
Summary
Chapter 15: Algorithm Complexity
Big O notation
Having fun with algorithms
Summary

What You Will Learn

  • Declare, initialize, add, and remove items from arrays, stacks, and queues
  • Create and use linked lists, doubly linked lists, and circular linked lists
  • Store unique elements with hash tables, dictionaries, and sets
  • Explore the use of binary trees and binary search trees
  • Sort data structures using algorithms such as bubble sort, selection sort, insertion sort, merge sort, and quick sort
  • Search elements in data structures using sequential sort and binary search

Authors

Table of Contents

Chapter 1: JavaScript – A Quick Overview
JavaScript data structure and algorithms
Setting up the environment
JavaScript basics
Debugging and tools
Summary
Chapter 2: ECMAScript and TypeScript Overview
ECMAScript or JavaScript?
ECMAScript 2015+ functionalities
Introducing TypeScript
Summary
Chapter 3: Arrays
Why should we use arrays?
Creating and initializing arrays
Adding elements
Removing elements
Adding and removing elements from a specific position
Two-dimensional and multi-dimensional arrays
References for JavaScript array methods
The TypedArray class
Arrays in TypeScript
Summary
Chapter 4: Stacks
Creating a JavaScript data structure and algorithm library
The stack data structure
Creating a JavaScript object-based Stack class
Protecting the internal elements of the data structure
Solving problems using stacks
Summary
Chapter 5: Queues and Deques
The queue data structure
The deque data structure
Solving problems using queues and deques
Summary
Chapter 6: Linked Lists
The linked list data structure
Doubly linked lists
Circular linked lists
Sorted linked lists
Creating the StackLinkedList class
Summary
Chapter 7: Sets
Structuring a dataset
Creating a Set class
Set operations
ECMAScript 2015 – the Set class
Multisets or bags
Summary
Chapter 8: Dictionaries and Hashes
The dictionary data structure
The hash table
The ES2015 Map class
The ES2015 WeakMap and WeakSet classes
Summary
Chapter 9: Recursion
Understanding recursion
Calculating the factorial of a number
The Fibonacci sequence
Why use recursion? Is it faster?
Summary
Chapter 10: Trees
The tree data structure
Tree terminology
The binary and binary search trees
Tree traversal
Searching for values in a tree
Self-balancing trees
Summary
Chapter 11: Binary Heap and Heap Sort
The binary heap data structure
The heap sort algorithm
Summary
Chapter 12: Graphs
Graph terminology
Representing a graph
Creating the Graph class
Graph traversals
Shortest path algorithms
Minimum spanning tree (MST)
Summary
Chapter 13: Sorting and Searching Algorithms
Sorting algorithms
Searching algorithms
Shuffle algorithms
Summary
Chapter 14: Algorithm Designs and Techniques
Divide and conquer
Dynamic programming
Greedy algorithms
Backtracking algorithms
Introduction to functional programming
Summary
Chapter 15: Algorithm Complexity
Big O notation
Having fun with algorithms
Summary

Book Details

ISBN 139781788623872
Paperback426 pages
Read More

Read More Reviews

Recommended for You

Understanding Software Book Cover
Understanding Software
$ 23.99
$ 16.80
Learning JavaScript Data Structures and Algorithms - Second Edition Book Cover
Learning JavaScript Data Structures and Algorithms - Second Edition
$ 35.99
$ 25.20
Hands-On Data Structures and Algorithms with JavaScript Book Cover
Hands-On Data Structures and Algorithms with JavaScript
$ 35.99
$ 25.20
JavaScript and JSON Essentials - Second Edition Book Cover
JavaScript and JSON Essentials - Second Edition
$ 23.99
$ 16.80
Data Structures in JavaScript [Video] Book Cover
Data Structures in JavaScript [Video]
$ 49.99
$ 42.50
JavaScript (and jQuery) in 7 Days [Video] Book Cover
JavaScript (and jQuery) in 7 Days [Video]
$ 124.99
$ 106.25