Skip to content

πŸš€ Java-based repository to master DSA, Low-Level Design, and High-Level Design for coding interviews β€” with topic-wise and company-wise tracking, real-world design patterns, and system architecture blueprints.

Notifications You must be signed in to change notification settings

piyush7199/javarena-dsa-design

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Javarena: Data Structures & Algorithms in Java

Welcome to Javarena – a comprehensive, Java-based repository crafted to help you master coding interviews with carefully curated DSA problems organized by topics and companies.


πŸ“Œ Table of Contents


🎯 Overview

This repository includes:

  • βœ… Data Structures & Algorithms (DSA) – Comprehensive topic-wise and company-wise curated problems from **LeetCode **, GeeksforGeeks, and more
  • 🏒 Company-Wise Tracking – Solved and categorized interview problems for top tech companies like Amazon, Adobe, Google, Microsoft, and many others
  • πŸ“Š Progress Tracking – Built-in topic suggester to help you practice consistently

πŸ“ Project Structure

src/main/java/com/javarena/dsa/
β”œβ”€β”€ algorithms/              # Algorithm implementations & problems
β”‚   β”œβ”€β”€ binarySearch/       # Binary search problems
β”‚   β”œβ”€β”€ bitManupulation/    # Bit manipulation problems
β”‚   β”œβ”€β”€ dynamicProgramming/ # DP problems
β”‚   β”œβ”€β”€ greedy/             # Greedy algorithm problems
β”‚   β”œβ”€β”€ recursionAndBacktracking/ # Recursion & backtracking
β”‚   β”œβ”€β”€ string/             # String algorithms (KMP, etc.)
β”‚   β”œβ”€β”€ twoPointerAndSlidingWindow/ # Two pointer problems
β”‚   └── miscellaneous/      # Other algorithm problems
β”‚
β”œβ”€β”€ datastructures/         # Data structure implementations
β”‚   β”œβ”€β”€ arrays/            # Array problems
β”‚   β”œβ”€β”€ binaryTree/        # Binary tree problems
β”‚   β”œβ”€β”€ graph/             # Graph algorithms
β”‚   β”œβ”€β”€ linkedList/        # Linked list problems
β”‚   β”œβ”€β”€ stackAndQueue/     # Stack & queue problems
β”‚   β”œβ”€β”€ string/            # String data structure problems
β”‚   β”œβ”€β”€ trie/              # Trie implementations
β”‚   β”œβ”€β”€ segmentTree/       # Segment tree
β”‚   β”œβ”€β”€ fenwickTree/       # Fenwick tree (BIT)
β”‚   └── hashMapAndSet/     # HashMap & HashSet problems
β”‚
β”œβ”€β”€ companies/             # Company-wise problem tracking (386 companies)
β”‚   β”œβ”€β”€ Amazon.md
β”‚   β”œβ”€β”€ Google.md
β”‚   β”œβ”€β”€ Microsoft.md
β”‚   └── ... (and many more)
β”‚
└── utils/                 # Utility classes
    β”œβ”€β”€ Main.java          # Main entry point
    └── TopicSuggester.java # Daily topic suggestion tool

πŸ“˜ DSA Topics

Algorithms

# Topic
1 Binary Search
2 Bit Manipulation
3 Dynamic Programming
4 Greedy Algorithms
5 Recursion & Backtracking
6 String Algorithms
7 Two Pointer
8 Sliding Window

Data Structures

# Topic
1 Arrays
2 Linked List
3 Stack & Queue
4 Binary Tree
5 Graph
6 Trie
7 Segment Tree
8 Fenwick Tree

🏒 Company-Wise Problems

Solve company-tagged questions like real interviews and track your progress here:

Company File
Amazon Amazon.md
Adobe Adobe.md
Google Google.md
Microsoft Microsoft.md
Meta Meta.md
Apple Apple.md
+380 More... πŸ“ View all companies

Each file contains:

  • 🎯 Problem link
  • πŸ“‚ Solution file path
  • ⚑️ Difficulty & topic tags

πŸš€ Getting Started

Clone the Repository

git clone https://github.com/piyush7199/javarena-dsa.git
cd javarena-dsa

Build with Maven

mvn clean compile

Run Topic Suggester

mvn exec:java -Dexec.mainClass="com.javarena.dsa.utils.TopicSuggester"

IDE Setup

Open in your favorite IDE:

  • IntelliJ IDEA: File β†’ Open β†’ Select project directory
  • VS Code: Install Java Extension Pack, then open project directory
  • Eclipse: File β†’ Import β†’ Maven β†’ Existing Maven Projects

🏷️ Badges

Java LeetCode GFG DSA Interview Prep