Overview
The objective of the "Data Structures and Algorithms for Beginners/Freshers" is to provide participants with a solid foundation in DSA using Java programming language. The training aims to equip beginners and freshers with the knowledge and skills necessary to get a job in top MNCs.
Training Agenda
Day 1: Introduction to Java
- Introduction to Java
- Setting up the development environment
- Basic Java syntax, variables, data types, and operators.
- Java Fundamentals
Labs: Star Patterns, Number Patterns and 50+ Java programs
Day 2: DSA and Big-O
- What are Data Structures and algorithms?
- Linear (Arrays, Linked List) Data Structures
- Non-linear (Tree, Graph) Data Structures
- Space and Time Complexities
Labs: Finding Time and Space Complexities in different algorithms
#Project 2: Implement a "To-Do List" using Array
Day 3: Arrays and Strings Data Structures
- Array Data Structures and its Operations
- String Data Structures and its Operations
- Code Implementations
Labs: Implement operations in arrays and strings.
Day 4: Searching Algorithms
- Linear Search and its Implementation
- Binary Search and its Implementation
- Searching in Arrays
Labs: Implement search algorithms and find its effectiveness
Day5: Sorting Algorithms - I
- Bubble Sort and its implementations
- Selection Sort and its implementations
- Insertion Sort and its implementations
- Merge Sort and its implementations
Labs: Implement sorting algorithms and find its effectiveness
Day 6: Sorting Algorithms - II
- Quick Sort and its implementations
- Counting Sort and its implementations
- Bucket Sort and its implementations
Labs: Solve sorting algorithm problems such as Minimum swaps
Day 7: HasMap, HashSet
- Hash Function
- HashMap Different Methods
- HashSet and its implementations
Labs: Hashing and HashSet problems such as Match Locks and Keys
Day 8: Stack
- Introduction to Stack
- Stack Implementation by Library
- Stack Implementation using Arrays
- Stack Implementation using LinkedList
Labs: Implement Stack using Arrays and LinkedList in problems like Basic Calculator
Day 9: Queue
- Introduction to Queue and its Implementation
- Queue Implementation using user-defined function
- Implement Queue using Stack
Labs: Implement Queue Problems such as First Unique Character in a String
Day 10: LinkedList - I
- LinkedList and its Types
- Singly LinkedList
- Doubly LinkedList
Labs: Implement LinkedList and understand its importance
Day 11: LinkedList - II
- Circular LinkedList and Its Implementation
- Reverse LinkedList
- Code Examples
Day 12: Tree - I
- Introduction to Trees
- Types of Trees: Binary Search Tree, AVL Trees etc.
- Code Implementations
Labs: Case studies on the use of trees in real-world applications
Day 13: Tree - II
- Tree Traversal Techniques: In-order, Pre-order, Post-order
- Tree Operations: Insertion, deletion and search
- Code Implementations
Labs: Solving typical problems using trees
Day 14: Heap
- Introduction to Heaps
- Types of heaps: Min-Heap, Max-Heap
- Heap Operations
Labs: Implementing different heap structures
Day 15: Graph - I
- Introduction to Graphs
- Depth-First Search (DFS) and its applications
- Breadth-First Search (BFS) and its applications
- Comparing DFS and BFS: when to use which
Day 16: Graph - II
- Dijkstra’s algorithm
- Bellman-Ford algorithm
- Floyd-Warshall algorithm
- Minimum Spanning Tree
Labs: Problem-solving session using graphs to solidify understanding and enhance problem-solving skills
What will you get?
- Get Started from zero to learn Data Structures with Java.
- Build logic building and problem-solving skills.
- Live Q&A and DSA problem support using Discord.
- Detailed video of each topic in DSA.
- Recording of each live session.
- Solve 100+ DSA Problems.
- Quick Notes for revision.
- Get Certificate of training completion.
By the end of this workshop, you'll be equipped with the tools and techniques needed to confidently solve DSA problems and prepare yourself for top MNCs. Join us on this exciting journey and unlock the power of Data Structures.