This Java application performs various operations on graph structures, including parsing DOT files, managing nodes and edges, and visualizing graphs. It also supports search algorithms like Breadth-First Search (BFS) and Depth-First Search (DFS).
- Graph Parsing: Parse .dot files to create and manipulate graph structures.
- Node and Edge Management: Add and remove nodes and edges from the graph.
- Visualization: Export the graph to .dot files and images.
- Search Algorithms: Implement BFS and DFS for graph traversal.
- Command-Line Interface: Interact with the graph and perform operations via a command-line interface.
-
Run the Application:
- Execute
src/main/application/Main.javato access the command-line interface.
- Execute
-
Run Test Cases:
- Execute
test/myGraphClass.javato run the test cases.
- Execute
Use the following commands to interact with the application:
- Parse .dot file:
src/main/java/testGraph.dot - Print graph details:
0 - Output graph details to file:
1followed bysrc/main/java/testGraph.txt - Add a node:
2followed bynode0 - Add multiple nodes:
3followed bynode1,node2,node3 - Add an edge:
4followed bywhiteandnode3 - Remove a node:
5followed byyellow - Remove multiple nodes:
6followed bynode1,black - Remove an edge:
7followed byblueandcyan - Output graph to .dot file:
8followed bysrc/main/java/testGraph_o.dot - Output graph to image:
9followed bysrc/main/java/testGraph.png - Exit:
Q - Perform BFS/DFS search:
10followed bybfsordfs
-
Feature 1: Parsing DOT files, printing details, and outputting to file.
-
Feature 2: Adding/removing nodes.
-
Feature 3: Adding/removing edges.
-
Feature 4: Outputting to .dot file and image.
-
Final Testing: 82b8581aa5068c9804c18beb58abe7cc01e21766
-
Continuous Integration: 669e2d62a7a94fbc0a038a561ab0c1f0aa705246
-
BFS Branch: bfs
-
DFS Branch: dfs
-
BFS Implementation: c65d58291562086c2838ff501920aae9e405d5bf
-
DFS Implementation: b6c9a76f85e7a4d1f695e29629fe0a0943fe39b5
-
Merge BFS: 119d64372419fbe526ec6756e19c5ca274fc16e6
-
Merge DFS: 0192df91cf231a6e8ce38f5ef6508d49a49af2bc
-
Template Design Pattern: a79a63ad9249bf99742825b2c7acda88e04ec72f
-
Strategy Design Pattern: e746659a58d4015f3e24ef76d6fa79e427f70aab
-
Random Walk: d7e93ca544637b9c1528202ade4cb161e1ccd803
- Pull Request #9 - Merging Template and Strategy Patterns