C_Algorithms 2.0.0
Documentation
Loading...
Searching...
No Matches
C Algorithms

Go to contributions doc GitHub Top Language GitHub Code Size in Bytes Docs

This open-source project aims to collect various C algorithms and data structures, making them available to everyone. We welcome contributions from anyone interested in improving or expanding the project.

Table of Contents

  • C Algorithms
    • Table of Contents
    • Getting Started
      • Prerequisites
      • Installation
    • Usage
    • Building the Executable
      • Using CMake
    • Dependencies
    • Project Structure
    • Contributing
    • Authors and Acknowledgment
    • License
    • Contact Information
    • Future Updates

Getting Started

Prerequisites

  • GCC or Clang compiler
  • CMake
  • Conan (optional for some libraries)

Installation

To get started with this project:

  1. Clone the repository: git clone https://github.com/LeonWandruschka/C_Algorithms.git
  2. Navigate to the cloned directory and install dependencies (if necessary).

Usage

After installation, you can build and run specific algorithms as described below. Use -h for help on running an algorithm, x or X to exit the program, or CTRL+C for an immediate stop.

Building the Executable

Using CMake

  1. Generate build files: cmake -S . -B build
  2. Build the project: cmake --build build

To run the executable after building, use: cmake --build build --target runExecutable

For a clean build, add --clean-first.

Dependencies

Ensure you have gcc or clang, and CMake installed. Conan is required for managing some library dependencies.

Project Structure

Here's an overview of the project structure:

shell
.
├── CODE_OF_CONDUCT.md
├── CmakeLists.txt
├── Doxyfile
├── LICENSE
├── README.md
├── memory
│ ├── CmakeLists.txt
│ ├── include
│ └── src
├── misc
│ ├── CmakeLists.txt
│ ├── include
│ └── src
├── search
│ ├── CmakeLists.txt
│ ├── include
│ └── src
└── src
├── CmakeLists.txt
└── main.c

Contributing

We welcome contributions! Please see CONTRIBUTING.md for more details on how to contribute to this project.

Authors and Acknowledgment

  • Leon Wandruschka - Initial work

Thanks to all the contributors who participate in this project.

License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

Contact Information

For any inquiries or contributions, please contact Leon Wandruschka.

Future Updates

  • Addition of more algorithms and data structures.
  • Integration of Conan packages for enhanced functionality.
  • Implementation of Catch2 for comprehensive testing.