Skip to content

singh-odyssey/java

Repository files navigation

☕ Java DSA & Core Concepts Practice

Welcome to my Java practice repository! This space is dedicated to my journey of learning and mastering Data Structures and Algorithms (DSA), Object-Oriented Programming (OOP), and the fundamentals of the Java programming language.

📂 Repository Structure

The code is organized into directories based on the concepts being practiced.

/
├── advance_recursion/    # Advanced recursion problems
├── array/               # Array operations and problems  
├── arrayList/           # ArrayList implementations
├── backtracking/        # Backtracking algorithms
├── basic_practice/      # Basic Java concepts and patterns
├── hashing/            # HashMap and HashSet implementations
├── linkedList/         # Linked list implementations
├── oops/               # Object-Oriented Programming concepts
├── queue/              # Queue data structure implementations
├── recursion/          # Recursion problems and solutions
├── sorting/            # Sorting algorithms
├── stack/              # Stack data structure implementations
├── string/             # String manipulation problems
├── tree/               # Tree data structure implementations
├── LICENSE             # MIT License
└── README.md          # This file

✨ Topics Covered

This repository includes implementations and examples for a variety of topics.

JAVA Core & OOP Concepts

  • Variables & Data Types
  • Operators
  • Control Flow (If-Else, Switch)
  • Loops (For, While, Do-While)
  • Arrays & Strings
  • Methods
  • Classes & Objects
  • Constructors
  • Inheritance
  • Polymorphism
  • Abstraction
  • Encapsulation
  • Exception Handling

Data Structures & Algorithms (DSA)

  • Arrays: Basic operations, searching, sorting
  • Linked Lists: Singly linked list implementations
  • Stacks: Implementation using arrays and linked lists
  • Queues: Queue implementations and operations
  • Trees: Binary tree operations
  • Searching Algorithms: Various search implementations
  • Sorting Algorithms: Bubble Sort, Selection Sort, Insertion Sort, Merge Sort, Quick Sort
  • Recursion: Basic and advanced recursion problems
  • Backtracking: Permutation and path finding algorithms
  • Hashing: HashMap and HashSet implementations

Note: Checked items are completed, unchecked are in progress or planned.

🚀 How to Run the Code

  1. Clone the repository:

    git clone https://github.com/singh-odyssey/java.git
    cd java
  2. Compile a Java file:

    javac directory/FileName.java

    For example:

    javac sorting/BubbleSort.java
  3. Run the compiled code:

    java directory.FileName

    For example:

    java sorting.BubbleSort

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🤝 Contributing

This is a personal learning repository, but suggestions and improvements are always welcome! Feel free to open an issue or submit a pull request.


Happy Coding!

About

This repository is for practicing Java.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages