-
This project is the extention of the CSC-365-fullstack-app 1.0 and CSC-365-fullstack-app 2.0
-
Version 1.0 is a full-stack web application that works like a search engine which will find the similar and relevant businesses (in a json dataset from Yelp) based on user's inputs using Cosine Similarity Metric.
-
Version 2.0 allows users to fetch 5-10 clusters randomly from the Spring Boot server. It then feed the clusters to React+D3.js (Data-driven document) in the FE to form up a hierarchical tree.
-
This new extended version 3.0 applies graph theory to form up graphs based on geographical distances, and utilize Dijkstra's alogorithm to find the shortest path (weighted by similarity rate) between two chosen nodes in the graph.
RD3G_showcase.mp4
Dijkstra_shortest_path.mp4
- Java Springboot
- Customized B-Tree
- Java NIO/IO
- Clustering using K-Means
- Customized HashTable
- Cosine Similarity
- MySql Database / Docker image
- Haversine formula
- Graph theory (Dijkstra's algorithm, Union-Find Disjoint Set, Weighted Graph)
- Vite/React--TypeScript
- React D3 Graph
- Tailwindcss
- Material-UI
- Union-find for disjoin set -- course's notes
- Union-find for disjoint set -- hackerearth
- Union-find for disjoint set -- cp-algo
- Union-find for disjoint set -- geeksforgeeks
- Kraskal's Algorithm -- cp-algo
- MST and Kraskal's Algorithm -- cp-algo
- Haversine implementation -- geeksforgeeks
- Dijkstra's algorithm
- React D3 Graph