Mastering Java with Data Structures and Algorithms – 120 Hrs
Level-1: Duration – 60 Hrs
Level-2: Duration – 60 Hrs
Modules
To enable developers to write code that runs on any device with a Java Virtual Machine (JVM), promoting reusability and portability.
- Level 1 – Mastering Java-60 Hours
- Oops Concepts
- Classes, Objects, Interfaces, Exception Handling
- Level 2 – Data Structure and Algorithms-60 Hours
- Stacks, Queue, Linked List, Trees, Graphs
- Collection Framework
- Collection Framework
- Stream API
- Lamba Expression
Program Objectives
- By the end of this course, participants will
- Understand Data Structures
- Develop Advanced Programming Skills
- Strengthen Object-Oriented Programming Concepts
- Master STL
- Efficiently Use STL Containers
- Acquire the skills and confidence to solve problems from platforms like CodeChef, HackerRank,, and Leetcode.
- Be able to write code faster by using AI-generated suggestions.
- Use AI to debug, refactor and optimize solutions.
Tools / Platform:
- Eclipse IDE
Level 1: Problem Solving with DSA using C Language (75 Hours) | ||
---|---|---|
Introduction to Problem Solving | Operators and Expressions | Decision Control Structures |
Looping Constructs | Modular Programming using Functions | Scope and Lifetime |
Coupling: Loose and Tight | Arrays | 2D Arrays – Matrices |
Macros | Strings | String Manipulation Functions |
Pointers | Pointer Arithmetic and Arrays | Dynamic Memory Allocation |
Competitive Problem-Solving using C: Sample Program List | ||
Viral Advertising, Utopian Tree | Printing Patterns | Kaprekar Number |
Birthday Cake Candles | Migratory Birds | Array Rotation |
Pangram String | Anagram String | Palindrome Index |
Encryption: Caesar Cipher | Game of Thrones | |
Level 2: Problem Solving with DSA using C++ (75 Hours) | ||
Data Structure | Encapsulation and Abstraction | Linear Data Structure |
Implementation using Stacks using Arrays and Class | Implementation using Queue using Arrays and Class | Linked List |
Singly Linked List | Doubly Linked List | Non-Linear Data Structures |
Trees | Graphs | Function Templates |
STL Algorithms | Function Pointer Callback Methods | Lambda |
STL Container Classes | Iterators | Std::vector, std::list, std::dequeue |
Set, multiset, Map, multimap (Tree Based Data Structures) | Unordered Set and Map (Hash Based Data Structures) | |
Competitive Problem-Solving using C++: Sample Program List | ||
Parenthesis Matching using Stack | Jesse and Cookies using Heap Tree | Super Reduced String using Stack |
Frequency Counting using Map | Implement Editor Undo option using Stack | Remove Duplicates in Sorted Array with O(n) complexity |
Leveraging AI Tools for Coding (30 Hrs) | ||
Introduction to AI-Powered Coding Tools | AI Code Assistants (Github Copilot/Tabnini/Codeium) | How they work |
Setting up Copilot in VS Code | Autocomplete & Code generation | Using Copilot to speed up writing test cases |
AI for Debugging & Optimization | Asking AI tools to suggest fixes | Debugging using AI |
Responsible Use of AI Tools | How to avoid over-dependence | AI as a helper |