Programming Fundamentals using Java


Begin your career in software development with the introduction to Data Structures and Algorithms in Java. Java, an Object Oriented Programming is one of the most sought after programming language and is the foundation of the Android operating system. Java is a perfect computer language for being competitive in today’s industry requirements.Designed for beginners, CRUX is a hands on course where we focus on developing core programming concepts and equip you to code solutions for complex problems using Java.

Register Now


We have designed our course keeping in mind the requirements of beginners.Course starts with fundamentals of logic building and problem solving. Many tricky Puzzles are also given to build logical thinking of our students.

Problem Solving

The course is designed to sharpen the problem solving skills of the students. We follow step-by-step approach to make students fall in love with programming and ignite their passion of coding with the help of problems ranging to easy to intermediate to expert level.

OOP Concepts & Project

Emphasis is given on building strong Object Oriented Programming Concepts and coding practices followed in the Software Industry, so to make our students industry-ready. Students will also build a game with Java Swing Libraries to strengthen their OOPS concepts.

Data Structures 
& Algorithms

This course entails more than 100 hours of teaching and hands on coding. Students will be solving more than 200 complex problems and will be evaluated for their problem solving skills and understanding of data structures throughout the course.

Course Contents

  • Logic Building and Java Fundamentals

    Programming fundamentals and logic building

    Course will start with basic understanding of logic. We will be discussing about Flowcharts, PsudoCode and students will solve also some of the Puzzles in initial classes.

    1. Flowcharts, pseudo-code and brain teasers
    2. IDE installation and familiarization
    3. Debugging
    4. Input-Output
    5. Data Types and Variables
    6. Typecasting
    7. Loops and Decision
    8. Functions and operators 9. Arrays, multi-dimensional arrays and dynamic arrays
    10. String and String Buffer

  • Recursion

    Recursion and Backtracking

    Then we will dive deep into Recursion and solve complex problems involving backtracking.

    1. Introduction
    2. Classical Recursion Problems
    3. Back-tracking
    4. Advanced Recursion problems
    5. Optimization

  • OOP

    Object Oriented Programming,Complexity Analyis

    In this part we learn about how to compute space-time complexity of our solution and how can we optimise our solutions. We will also learn about OOPs and recommended coding practices.

    1. Classes and objects
    2. Class, Function and Data member modifiers
    3. Encapsulation, Inheritance and Polymorphism
    4. Abstract classes, Interfaces and Packages
    5. Generics and Exceptions

  • Data Structures and Algorithms

    Linked Lists, Stacks, Queues, Trees

    This is the most important and exciting part and yet easy. Data structures are all about storing data.You will learn to implement different data structures and when to use them. This part is important as most of the questions asked in interviwes are related to data structures.

    Lecture 14-23
    1. Linked Lists
    2. Stacks
    3. Queues
    4. Generic Trees
    5. Binary Trees
    6. Binary Search Trees
    7. Hash Tables & Heaps
    8. Graphs – Traversals, Minimum Spanning trees, Shortest path algorithms
    9. Text Processing – Text Matching, Compression
    10. Dynamic Programming

  • Project Development

    Heaps, Hash Tables, Graphs, Tries, Dynamic Programming

    In last classes we will build a game using Java Swing Libraries.

    Project Development
    0. Learning about Java Swing
    1. One game developed in class
    2. Second game done as assignment


(Drop a line at [email protected] if you have further queries)

  • Who should do this course?

    Anybody who is interested in learning programming can take the Java training. Java is a powerful and elegant language, but still is pretty easy to learn. Also, this opens the path to enter Enterprise Java world for making powerful desktop and web applications or mobile apps using Android.

  • I know C, should I do this course?

    Yes. Absolutely. Not only will this course teach you Java, but also Object Oriented Programming which forms the base of most, if not all code running live across the globe. Besides it builds your problem solving skills, teaches you some fine data structures and helps you develop the thinking process to optimise your solutions.

  • I know C++, should I do this course?

    Depends. Knowing C++ generally means you know Object Oriented Programming well. If that is the case, you’ll be better served by learning some courses which teach you to create making mobile apps or web applications. Please check out our Pandora and Elixir course for those.

  • Will this help me with competitive programming or can I apply to ACM-ICPC after doing this course?

    This course will help you become smarter with your solutions. You’ll be able to write solutions that run in lesser space and time. The last time we heard from capable competitive programmers, they said these skills made them capable.

  • Will this course help me in Interviews?

    Yes. If you learn well, all that the course intends to teach, you’ll be able to impress quite a few interviewers across quite a few fine companies.

  • Will this help me in making websites and apps?

    No. This is a fundamentals course. To make websites and apps, you need to learn more. Please check out our Pandora & Elixir course for those.

  • Is this CORE Java or Advanced Java?

    This is not CORE java or Advanced Java. This is a course which teaches you problem solving, data structures and Object Oriented Programming. Though, most of what CORE java means is being covered. The aim of the course is to help you with a smarter beginning. For being able to make web and mobile apps you need to learn frameworks. Android is one such framework for mobile apps. Please check out our Pandora and Elixir course for more details on these lines.

Come,Fall in LOVE

Upcoming Batches

4-days a week Batches:
29th May at Pitampura (FULL)
5th June at Pitampura (FULL)
6th June at Pitampura (FULL)
26th June at Pitampura (FULL)
3rd June at Dwarka (FULL)
5th Juneat Dwarka (FEW SEATS LEFT)
10th Juneat Dwarka (FEW SEATS LEFT)
4th June at Greater Noida
11th June at Greater Noida

Online code Submission & Evaluation
2 Hacakthons and Special Session on Java Game Development
Regular Batch

(28 Lectures)

Enroll Now

Contact Us for
FastTrack / Special Batches
Call(Toll-free): 1800-2744-504


What our students say

Review: I took the Crux (JAVA) foundation course which is taught by Sumeet sir and it is hands down the best programming environment one could get to get acquainted with the basics of coding. They are quite flexible and willing to adjust. I am awed by the effort the faculty put in giving the students the best possible experience.

Review: My experience at Coding Blocks was a really amazing one. Being absolutely new to programming, I was lucky to get the best introduction to programming here. The basics were taught very well and more emphasis was laid on building thought process to approach and attempt questions. Sumeet sir taught us very enthusiastically and patiently.

Review: I joined the Crux (java) course mentored by Sumeet Bhaiya. Before joining this course i was hardly able to apply any algorithm but during the course itself sumeet bhaiya cleared the concepts so well and made the logical thinking capacity so sharp that now i feel quite comfortable with coding.


Review: If you have passion, this is THE place. Enrolled in 2 courses and both were awesome. They even helped many students getting placed in top companies. Any student with a passion for tech must join to enhance his/her skill set.