Academic practice repository for Java Object-Oriented Programming and Data Structures & Algorithms
This repository contains my 2nd semester Java practice work, developed as part of two separate undergraduate courses:
- Object-Oriented Programming (OOP) using Java
- Data Structures and Algorithms (DSA) using Java
The repository serves as an academic archive of practice programs, lab work, and concept implementations completed throughout the semester.
- Language: Java
- Semester: Second Semester
- Level: Undergraduate
- Purpose: Academic learning, hands-on practice, and concept reinforcement
The primary goal of this repository is to strengthen core Java programming skills while building a solid foundation in object-oriented design principles and algorithmic problem solving.
This section focuses on applying object-oriented principles using Java, with emphasis on clean design and conceptual clarity.
Key concepts include:
- Classes and Objects
- Encapsulation
- Inheritance
- Polymorphism
- Abstraction
- Constructors and Method Overloading
- Interfaces and Abstract Classes
- Exception Handling
- Packages and Access Modifiers
This section focuses on implementing and understanding fundamental data structures and algorithms using Java.
Key topics include:
- Arrays and Strings
- Recursion
- Searching Algorithms
- Sorting Algorithms
- Stack and Queue implementations
- Linked Lists
- Basic algorithmic problem solving
- Time and space complexity (introductory level)
Through this repository and coursework, I aim to:
- Develop a strong understanding of Java syntax and semantics
- Apply OOP principles to real programming problems
- Implement fundamental data structures from scratch
- Improve logical thinking and problem-solving skills
- Write readable, modular, and maintainable Java code
- Java (JDK 17+)
- IDE: IntelliJ IDEA / VS Code (or equivalent)
- Platform: Linux / Windows
- Version Control: Git & GitHub
- This repository is intended for academic practice only.
- Code is written with a focus on learning and clarity, not production optimization.
- The repository will be continuously updated as the semester progresses.
- Structure and content may evolve as new topics are introduced.
This project is licensed under the MIT License.
Copyright (c) 2026
Krish Singh
📌 This repository represents my academic journey in learning Java during the second semester.