This portfolio showcases a diverse collection of projects that highlight my expertise in algorithm design, data structures, and software development using C#. Through these projects, I have demonstrated a deep understanding of fundamental concepts like Big O notation and runtime analysis, as well as practical skills in implementing algorithms such as sorting, searching, and pathfinding. I have explored data structures, including stacks, queues, and binary search trees, while applying these structures to solve complex problems efficiently. My work also includes creative projects like grid-based games, recursive logic implementations, and randomized algorithms, reflecting my ability to combine theory with practical application. Additionally, I have developed console-based and graphical applications, illustrating my adaptability across different programming paradigms and environments. Together, these projects represent a comprehensive skill set in computational thinking, problem-solving, and clean coding practices.
This project serves as a foundational reference for understanding runtime complexities and their impact on algorithm performance.
Demonstration and explaination of worst and best runtimes
Demonstrates recursion in action. This project is a fun and educational implementation of recursive logic, emphasizing its role in solving complex problems efficiently.
This project serves as both a functional game and a demonstration of key programming concepts, including grid manipulation, event handling, and match-checking algorithms.
This program demonstrates the Fisher-Yates Shuffle Algorithm by implementing a card shuffling system within a simple card game.
This is a simple console-based maze game implemented in C#. The goal of the game is to navigate a character through a 10x10 maze from a starting point to an exit point, avoiding walls along the way.
This console application demonstrates the use of common data structures in C#, including arrays, stacks, queues, and dictionaries.
This program provides a clear demonstration of basic sorting algorithms with step-by-step output, making it suitable for learning and understanding sorting techniques.
This project demonstrates six common sorting algorithms implemented in C#. It uses a dataset of 474 scores from a text file (scores.txt) and sorts them using each algorithm. The project also measures the performance of each algorithm in terms of execution time.
This project implemented in MVC website and demonstrates six common searching algorithms implemented in C#. It uses a dataset of 474 scores from a text file (scores.txt) and sorts them using each algorithm.
This project demonstrates the implementation of a Binary Search Tree (BST) using C#. The application loads a dataset of scores from a text file, sorts the scores, inserts them into a BST, and performs various tree traversals (in-order, pre-order, and post-order).
The game includes an AI solver that uses a Depth-First Search (DFS) algorithm to navigate the maze from the starting point to the exit.