Skip to content

VicAlexandre/graph_theory

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Graph Theory Implementations & Library

This repository contains both graph algorithm implementations as well as a fully-functioning library implementing graphs through adjacency lists.

📌 Table of Contents

🛠 Graph Library

The library provides a comprehensive set of functionalities to:

  • Create and manipulate directed and undirected graphs
  • Perform basic graph traversals
  • Apply graph algorithms

This library implements graphs through adjacency lists, providing efficient operations.

💽 Installation and Testing

  1. Clone the repository:
git clone https://github.com/VicAlexandre/graph_theory.git
  1. Navigate and compile:
cd graph_theory
make

This will compile the library and all available examples.

  1. Test the library:
./test

This will automatically compile both the library and the driver test code.

📝 Usage

To use the library in your project, include the necessary header files and link against the provided static library.

👥 Contribution

This project is a work-in-progress. Feedback, suggestions, and contributions are highly appreciated.

✨ Features

  • Graph representation through adjacency lists of both directed and undirected graphs
  • Simple graph printing
  • Insertion and deletion of vertices and edges
  • DFS example
  • Kosaraju's algorithm for strongly connected components example

✅ To-do

  • Implement BFS
  • Implement graph algorithms (Dijkstra, Prim, Kruskal, etc.)
  • More generic graph representation
  • Tests
  • Proper documentation
  • More examples
  • Static allocation options for the whole library with emphasis on embedded systems

About

A repository that will store all code written for a graph theory course, along with a fully functioning static graph lib.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors