This project is aimed to learn Java as a Programming language. As of now (26/6/2021) I am adding algortihms of only graph data structure. The algorithm of graph contains multiple packages and inside them you will find them being named as per the Algortihm which they are focused on. In every algortihm you will most probably find these three classes -> Vertex, Graph, and App. The vertex class defines the properties and behaviour of vertex class , for an instance it includes methods for adding neighbour and contains data and its visited state. The Graph class constains a list of vertex and a hashmap to check whether a vertex already exists or not. It contains method of expanding graph ds by adding mutliple edges. The App class is basically the main class which has the main method defined. You can experiment in that class by creating vertices and applying methods available in that package.