My Projects

Huffman Coding in C++

Implemented a complete Huffman Coding algorithm in C++. Constructed an ordered linked list from character-frequency pairs, built a binary tree, generated Huffman codes, and implemented various tree traversals. Produced output and log files for data compression demonstrations.

K-Means Clustering in C++

Developed a 2D K-Means clustering program in C++ using dynamic arrays. Clustered points into 3, 4, or 5 groups based on centroid proximity. Included custom class implementation, generated display/log files, and handled distance calculations and iterative updates.

Java Servlet File Upload System

Built a Java Servlet for handling file uploads, deployed on Apache Tomcat with reverse proxy via Apache HTTP Server. Integrated remote MySQL storage and retrieval with file validation. Packaged and deployed as a WAR file.

SQL Query Contribution System (Community Health Project)

Created a desktop Java application allowing stakeholders to define problems, submit SQL queries, and search stored queries using a remote MySQL database. Included natural language support, user interaction, and executable JAR packaging.

Radix Sort in Java with Hash Buckets

Implemented Radix Sort using linked list queues and hash buckets in Java. Managed both positive and negative integers using offset logic. Logged sorting steps and produced structured output files for analysis and debugging.

Lexical Analyzer and Syntax Parser in C++

Built a two-phase compiler front-end. Phase 1: lexical analysis using regex for token extraction. Phase 2: recursive-descent parser based on EBNF grammar. Generated postfix and three-address intermediate code as output.

Shortest Path Finder using Dijkstra’s Algorithm

Used Dijkstra’s SSS algorithm repeatedly to solve the all-pairs shortest path problem. Read edge data from files, built cost matrices, and computed best paths with traceable outputs and formatted logs.

Personal Habit Tracker Web App

Full-stack Java web application that tracks user habits and goals. Includes login/signup, progress charts, daily/weekly habit creation, and MySQL database integration. Deployed on Apache Tomcat with HTML/CSS frontend.

API Mashup Project (GitHub + JokeAPI)

Built a Node.js synchronous mashup using only built-in modules. Authenticated GitHub users via OAuth and displayed a random JokeAPI joke alongside. No use of async/await or third-party libraries per project rules.

Subterranean Urban Parking with Multi-hop LoRa

Worked on a smart parking architecture using LoRa for underground communication. Designed multi-hop data routing protocols, simulated network behavior, and presented an efficient parking guidance strategy.

Operating System Simulation in Java

Simulated OS behavior using multithreaded Java with semaphore synchronization. Modeled student-professor interactions, class sessions, and cafeteria access using binary semaphores to avoid race conditions and ensure timing constraints.