Hands-On Data Structures & Algorithms in Java 11

Hands-On Data Structures & Algorithms in Java 11

English | MP4 | AVC 1920×1080 | AAC 48KHz 2ch | 2h 47m | 533 MB

Empower you to develop effective and efficient code within minutes

Programs are created from algorithms and data structures. Mastering these is an essential part of your development as a Java programmer. They are the main building blocks for each architectural pattern. Many tutorials treat data structures & algorithms as theoretical computer science topics. This course relates every technique back to real-world problems and situations you will face working as a programmer. The vision of the course is to get you acquainted with the core and advanced data structures and algorithms used for day-to-day applications. You’ll see how they work and how to use them effectively in your own programs. This course will be full of step-by-step instructions, revealing examples, and clear explanations that will help you understand the practical application of each algorithm with scenario trade-offs. You’ll learn to use querying binary search trees. The course will take you through heapsort, quicksort, recursion, and tail recursion algorithms. You’ll get familiar with multithreading and probabilistic algorithms. You’ll also understand the importance of advanced data structures and graph algorithms. This course will help you to gain in-demand knowledge of key data structures and algorithms and prepare you for the next stage in your career as a developer.

This course takes an inform and demonstrate the approach. Each data structure and algorithm are thoroughly explained followed by a demonstration using the Java programming language. In addition to hands-on instruction, the course features real-world illustrative examples. Tips and best practices are shared throughout the course to empower you to develop effective and efficient code.

What You Will Learn

  • Implement data structures to maximize program effectiveness and efficiency.
  • Develop algorithms to manipulate large data sets.
  • Build multiple search algorithms to benchmark results
  • Develop optimized algorithms for sorting various data structures
  • Design algorithms with Big O notation
Table of Contents

Getting Started with Data Structures and Algorithms
1 The Course Overview
2 Technology Setup

Creating Efficiency with Strings
3 Using String Data Structures for Word Processing
4 Searching Strings in Large Documents
5 Sorting Strings to Organize Output
6 Summary of String Data Structure and Related Algorithms

Working with Arrays
7 Using the Array Data Structure to Track Student Grades
8 Searching Arrays to Evaluate Grade Ranges
9 Sorting Arrays to Optimize Performance
10 Summary of Array Data Structure and Related Algorithms

Using Linked Lists
11 Using the Linked List Data Structure to Create a Repository
12 Searching Linked Lists for Matching Criteria
13 Sorting Linked Lists to Optimize Performance
14 Summary of the Linked Lists Data Structure and Related Algorithms

Sorting Stacks and Queues
15 Using Stacks and Queues Data Structure to Demonstrate LIFO and FIFO Principles
16 Searching Stacks and Queues to Determine the Next Appropriate Data for Processing
17 Sorting Stacks and Queues to Optimize Performance
18 Summary of Stacks and Queues Data Structure and Related Algorithms

Implementing Trees
19 Using the Tree Data Structure to Store Hierarchical Information
20 Inserting and Deleting Tree Nodes
21 Searching Trees to Determine Hierarchy
22 Summary of the Tree Data Structure and Related Algorithms

Hash Maps
23 Using the Hash Map Data Structure to Demonstrate Key-Value Pairs
24 Searching Hash Maps to Determine Index Values
25 Sorting Hash Maps to Optimize Performance
26 Summary of Hash Map Data Structure and Related Algorithms

Graphs
27 Using the Graph Data Structure to Store Relationships
28 Traversing Graphs to Determine Relationships
29 Shortest Path Algorithm
30 Summary of Graph Data Structure and Related Algorithms

Advanced Topics
31 Recursion to Implement a Fibonacci Function
32 Big-O Notation to Describe Performance