A comprehensive guide to the algorithms and data structures used when designing architectural solutions and big data applications.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 courses treat data structures and algorithms as a theoretical computer science topics. This course relates every technique back to real-world problems and situations you will face working as a programmer. You will start off with data structures before diving deeper into hash tables and hash functions. This will allow your programs to find the in-memory data they need, even with huge quantities of records stored in the memory. 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 algorithms and probabilistic algorithms. You’ll also understand the importance of advanced data structures and graph algorithms. This will help you to build priority queues and save your time by keeping disgruntled users at bay. User databases and minimal computing requirements are on the rise. It's important to write sophisticated applications and run them with improved performance, and this course helps you write these applications. It 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.About The AuthorTomasz Lelek is a Software Engineer, programming mostly in Java and Scala. A fan of microservices architecture, and functional programming. He dedicates considerable time and effort to be better every day. Recently diving into Big Data technologies such as Apache Spark and Hadoop..
He is currently using algorithms to handle ten millions of users of allegro.pl
Facilities
Location
Start date
Online
Start date
Different dates availableEnrolment now open
About this course
Explore the Big O Notation and analyze algorithms to write efficient data structures
Leverage data structures for building blocks with Stacks and Queues
Implement sorting efficient algorithms with Heapsort to sort huge data sets within time limits
Create immutable code Recursion programming algorithms in a functional way to make your programs more concise and elegant and reduce memory consumption
Estimate the cardinality of a dataset and estimate elements of data sets with a small memory footprint
Use Querying Binary Search Trees and Hash tables to speed up querying in an application
Use algorithms to get approximate answers quickly, when speed matters more than precision
Scale your applications to millions of users with algorithms
Questions & Answers
Add your question
Our advisors and other users will be able to reply to you
We are verifying your question adjusts to our publishing rules. According to your answers, we noticed you might not be elegible to enroll into this course, possibly because of: qualification requirements, location or others. It is important you consult this with the Centre.
Thank you!
We are reviewing your question. We will publish it shortly.
Or do you prefer the center to contact you?
Reviews
Have you taken this course? Share your opinion
This centre's achievements
2021
All courses are up to date
The average rating is higher than 3.7
More than 50 reviews in the last 12 months
This centre has featured on Emagister for 4 years
Subjects
Architectural
Programming
Diving
Algorithms
Works
Java
Lean
Course programme
Basic Data Structures 5 lectures37:01The Course Overview This video provides an overview of the entire course.Big O Notation — How to Analyze Algorithms In this video we will go over the Big O notation. • Explore what is a Big O notation • Learn how to apply it to analyze the algorithm complexityStacks — Basic Building Blocks of Every Program In this video, we will look into Stacks. • Delve into the basics of Stacks • Learn when to use it • Explore the operations that are supported by the StackLinked Lists — When We Need Fast Insertion In this video, we will look into linked list. • Explore how it is constructed • Learn how fast is it with the help of an exampleArrays — When We Need Fast Lookup In this video, we will look into Arrays. • Explore how it is constructed • Learn how fast is it works with the help of an example • Assessment • Congratulations! you have completed the Section. To validate your learning, go ahead and download the Assesment for this section. Answers Download Assessment Basic Data Structures 5 lectures37:01The Course Overview This video provides an overview of the entire course.Big O Notation — How to Analyze Algorithms In this video we will go over the Big O notation. • Explore what is a Big O notation • Learn how to apply it to analyze the algorithm complexityStacks — Basic Building Blocks of Every Program In this video, we will look into Stacks. • Delve into the basics of Stacks • Learn when to use it • Explore the operations that are supported by the StackLinked Lists — When We Need Fast Insertion In this video, we will look into linked list. • Explore how it is constructed • Learn how fast is it with the help of an exampleArrays — When We Need Fast Lookup In this video, we will look into Arrays. • Explore how it is constructed • Learn how fast is it works with the help of an example • Assessment • Congratulations! you have completed the Section. To validate your learning, go ahead and download the Assesment for this section. Answers Download Assessment The Course Overview This video provides an overview of the entire course. The Course Overview This video provides an overview of the entire course. The Course Overview This video provides an overview of the entire course. The Course Overview This video provides an overview of the entire course. This video provides an overview of the entire course. This video provides an overview of the entire course. Big O Notation — How to Analyze Algorithms In this video we will go over the Big O notation. • Explore what is a Big O notation • Learn how to apply it to analyze the algorithm complexity Big O Notation — How to Analyze Algorithms In this video we will go over the Big O notation. • Explore what is a Big O notation • Learn how to apply it to analyze the algorithm complexity Big O Notation — How to Analyze Algorithms In this video we will go over the Big O notation. • Explore what is a Big O notation • Learn how to apply it to analyze the algorithm complexity Big O Notation — How to Analyze Algorithms In this video we will go over the Big O notation. • Explore what is a Big O notation • Learn how to apply it to analyze the algorithm complexity In this video we will go over the Big O notation. • Explore what is a Big O notation • Learn how to apply it to analyze the algorithm complexity In this video we will go over the Big O notation. • Explore what is a Big O notation • Learn how to apply it to analyze the algorithm complexity Stacks — Basic Building Blocks of Every Program In this video, we will look into Stacks. • Delve into the basics of Stacks • Learn when to use it • Explore the operations that are supported by the Stack Stacks — Basic Building Blocks of Every Program In this video, we will look into Stacks. • Delve into the basics of Stacks • Learn when to use it • Explore the operations that are supported by the Stack Stacks — Basic Building Blocks of Every Program In this video, we will look into Stacks. • Delve into the basics of Stacks • Learn when to use it • Explore the operations that are supported by the Stack Stacks — Basic Building Blocks of Every Program In this video, we will look into Stacks. • Delve into the basics of Stacks • Learn when to use it • Explore the operations that are supported by the Stack In this video, we will look into Stacks. • Delve into the basics of Stacks • Learn when to use it • Explore the operations that are supported by the Stack In this video, we will look into Stacks. • Delve into the basics of Stacks • Learn when to use it • Explore the operations that are supported by the Stack Linked Lists — When We Need Fast Insertion In this video, we will look into linked list. • Explore how it is constructed • Learn how fast is it with the help of an example Linked Lists — When We Need Fast Insertion In this video, we will look into linked list. • Explore how it is constructed • Learn how fast is it with the help of an example Linked Lists — When We Need Fast Insertion In this video, we will look into linked list. • Explore how it is constructed • Learn how fast is it with the help of an example Linked Lists — When We Need Fast Insertion In this video, we will look into linked list. • Explore how it is constructed • Learn how fast is it with the help of an example In this video, we will look into linked list. • Explore how it is constructed • Learn how fast is it with the help of an example In this video, we will look into linked list. • Explore how it is constructed • Learn how fast is it with the help of an example Arrays — When We Need Fast Lookup In this video, we will look into Arrays. • Explore how it is constructed • Learn how fast is it works with the help of an example • Assessment • Congratulations! you have completed the Section. To validate your learning, go ahead and download the Assesment for this section. Answers Download Assessment Arrays — When We Need Fast Lookup In this video, we will look into Arrays. • Explore how it is constructed • Learn how fast is it works with the help of an example • Assessment • Congratulations! you have completed the Section. To validate your learning, go ahead and download the Assesment for this section. Answers Download Assessment Arrays — When We Need Fast Lookup In this video, we will look into Arrays. • Explore how it is constructed • Learn how fast is it works with the help of an example • Assessment • Congratulations! you have completed the Section. To validate your learning, go ahead and download the Assesment for this section. Answers Download Assessment Arrays — When We Need Fast Lookup In this video, we will look into Arrays. • Explore how it is constructed • Learn how fast is it works with the help of an example • Assessment • Congratulations! you have completed the Section. To validate your learning, go ahead and download the Assesment for this section. Answers Download Assessment In this video, we will look into Arrays. • Explore how it is constructed • Learn how fast is it works with the help of an example • Assessment • Congratulations! you have completed the Section. To validate your learning, go ahead and download the Assesment for this section. Answers Download Assessment In this video, we will look into Arrays. • Explore how it is constructed • Learn how fast is it works with the help of an example • Assessment • Congratulations! you have completed the Section. To validate your learning, go ahead and download the Assesment for this section. Answers Download Assessment Hash Tables and Binary Search Trees 5 lectures38:33Hash Tables and Hash Functions — Fast Lookup In this video, we will lean about what is a Hash tables. • Explore what is a hash table • Learn how to implement a Hash table • Test the Hash tableHash Functions — How to Distribute Data into Buckets In this video, we will learn delve further into Hash table behaves. • Learn how the Hash table behaves with the proper Hash function • Learn how the hash table behaves with the incorrect Hash function • Explore how to use Java hashCode() method properlyWhat is a Binary Search Tree? In this video, we will learn the binary search tree. • Learn when to use it • Explore how to add BST • Learn how to traverse binary search treeQuerying Binary Search Tree — When to Use It Effectively In this video, we will learn the implementation of the binary search tree. • Implement the insertion operation • Implement the find operation • Implement the traversing operationBinary Search Tree — Removing Nodes In this video, we will explore how to delete data from BST. • Delete where there is no child node • Delete where node has one child • Delete where the node has two children • Assessment • Congratulations! you have completed the Section. To validate your learning, go ahead and download the Assesment for this section. Answers Download Assessment Hash Tables and Binary Search Trees. 5 lectures38:33Hash Tables and Hash Functions — Fast Lookup In this video, we will lean about what is a Hash tables. • Explore what is a hash table • Learn how to implement a Hash table • Test the Hash tableHash Functions — How to Distribute Data into Buckets In this video, we will learn delve further into Hash table behaves. • Learn how the Hash table behaves with the proper Hash function • Learn how the hash table behaves with the incorrect Hash function • Explore how to use Java hashCode() method properlyWhat is a Binary Search Tree? In this video, we will learn the binary search tree. • Learn when to use it • Explore how to add BST • Learn how to traverse binary search treeQuerying Binary Search Tree — When to Use It Effectively In this video, we will learn the implementation of the binary search tree. • Implement the insertion operation • Implement the find operation • Implement the traversing operationBinary Search Tree — Removing Nodes In this video, we will explore how to delete data from BST. • Delete where there is no child node • Delete where node has one child • Delete where the node has two children • Assessment • Congratulations! you have completed the Section. To validate your learning, go ahead and download the Assesment for this section. Answers Download Assessment Hash Tables and Hash Functions — Fast Lookup In this video, we will lean about what is a Hash tables. • Explore what is a hash table • Learn how to implement a Hash table • Test the Hash table Hash Tables and Hash Functions — Fast Lookup In this video, we will lean about what is a Hash tables. • Explore what is a hash table • Learn how to implement a Hash table • Test the Hash table Hash Tables and Hash Functions — Fast Lookup In this video, we will lean about what is a Hash tables. • Explore what is a hash table • Learn how to implement a Hash table • Test the Hash table Hash Tables and Hash Functions — Fast Lookup In this video, we will lean about what is a Hash tables. • Explore what is a hash table • Learn how to implement a Hash table • Test the Hash table In this video, we will lean about what is a Hash tables. • Explore what is a hash table • Learn how to implement a Hash table • Test the Hash table In this video, we will lean about what is a Hash tables. • Explore what is a hash table • Learn how to implement a Hash table • Test the Hash table Hash Functions — How to Distribute Data into Buckets In this video, we will learn delve further into Hash table behaves. • Learn how the Hash table behaves with the proper Hash function • Learn how the hash table behaves with the incorrect Hash function • Explore how to use Java hashCode() method properly Hash Functions — How to Distribute Data into Buckets In this video, we will learn delve further into Hash table behaves. • Learn how the Hash table behaves with the proper Hash function • Learn how the hash table behaves with the incorrect Hash function • Explore how to use Java hashCode() method properly Hash Functions — How to Distribute Data into Buckets In this video, we will learn delve further into Hash table behaves. • Learn how the Hash table behaves with the proper Hash function • Learn how the hash table behaves with the incorrect Hash function • Explore how to use Java hashCode() method properly Hash Functions — How to Distribute Data into Buckets In this video, we will learn delve further into Hash table behaves. • Learn how the Hash table behaves with the proper Hash function • Learn how the hash table behaves with the incorrect Hash function • Explore how to use Java hashCode() method properly In this video, we will learn delve further into Hash table behaves • ...