
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Course Introduction.
Understand about data structure and it's importance with example.
Lets explore about linear data structures and non-linear data structures, along with abstract data types.
Understand the concepts of Time complexity and Space Complexity and learn the rules to calculate time complexity for worst case scenario.
Array, one of the most fundamental data structures used to store fixed number of values of same data types.
Declare an array in java and implement several array operations.
Write code to find continuous sub-array whose sum is equal to a given number.
Write code to reverse an array without using an additional array.
Explore dynamic array and internal working.
Introduction to List Data Structure.
Let's understand about an ArrayList, its properties and internal working.
Implementations of major operations of an ArrayList.
Write a program to synchronize an ArrayList.
Write a program to remove duplicates from an ArrayList.
Introduction to LinkedList definition, properties and uses.
Write a program to insert a node at the middle position of a linked list.
Write a program to delete the middle node of a LinkedList.
Write a program to detect loop in a LinkedList.
Doubly Linked List introduction, properties and internal implementation.
Write a program to reverse a doubly linked list.
Introduction to circular linked list, its properties, uses and internal implementation.
Write a program to convert a singly linked list into a circular linked list.
Introduction to vector data structure, its properties, uses and internal implementation.
Write a program to find the K-th smallest divisor of a natural number N.
Write a program to find four factors of a given integer N with maximum product and sum equal to N.
Implement a Stack using an ArrayList.
Implement a Stack using a LinkedList.
Write a program to convert an infix expression to a postfix expression using stack.
Write a program to implement two stacks using only one Array.
Introduction to queue, its properties and uses.
Write a program to implement a Queue using Linked List.
Write a program to implement a Queue using Stack data structures.
Introduction to Priority Queue, its properties, declaration in java and its uses.
Write a program to implement a Priority Queue using a Linked List.
Introduction to Set data structure.
Data Structures and Algorithms are the most important and fundamental building blocks of computer science and any coding interviews. A good knowledge of data structures & algorithms is a must for designing and developing an efficient software application. This course will covers all the practical data structures of Java Collections Framework along with several important algorithms that we often use for application development and explore in depth about its working, properties and practical significance in creating efficient and reliable software applications. Here, we will explore and analyse about various data structures and algorithms like Arrays, Linked List, Stack, Queue, Priority Queue, Set, Map, Hashtable, Tree, Binary Search Tree, Heaps, Graphs, Graph Algorithms, Search Algorithms, Sort Algorithms and many more.
The objective of this course is to enable students to:
Develop deeper understanding of Data Structures and Algorithms.
Master Arrays, Linked List, Stack, Queue, Priority Queue, Set, Map, Hashtable, Tree, Heaps, Graphs.
Master Sorting Algorithms, Searching Algorithms, Graph Algorithms.
Ace Coding Interviews.
Understand how a data structure works internally.
Develop an understanding of when to use which data structure and algorithm.
Understand Space and Time complexity of using a particular Data Structure or algorithm.
Implement any coding exercise confidently.
This course is designed, keeping simplicity as a priority so that even beginners will find it easy to understand and practice simultaneously. The coding language, I have used here is Java, however one can practice in any language as the concepts behind data structures and algorithms remains the same across various programming languages. So go ahead and enroll now. I will see you in the next lesson.
What Students say about this course ?
Good content and easy to understand the Data Structure concepts. The well explained coding examples and questions asked in quiz are helpful for interview preparation. - Keerti Joshi
Helped me to understand about data structures even more clearly, especially the internal implementations of each data structures. - Anuradha Singh