Skip to content

Jeraross/Polyglot-Backtracking

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Polyglot-Backtracking

This project is a requirement for a Theory of Computation course. The primary goal is to compare implementations based on three main axes:

  1. Performance: Execution time and memory usage.
  2. Expressiveness: Readability, clarity, and lines of code.
  3. Paradigm: The idiomatic approach for each language (imperative, functional, etc.).

The Languages

Languages were chosen to highlight differences in paradigm and performance:

  • Python (High-Level): Focus on clarity and speed of implementation.
  • C++ (Compiled): Focus on raw performance and low-level optimization.
  • Java (Object-Oriented): Focus on structure, maintainability, and balance between abstraction and performance.

How to Use

Each problem directory (e.g., n-queens/) contains its own README.md with specific build and execution instructions.

General Requirements:

  • C++ compiler (g++, clang)
  • Python 3 interpreter
  • Java 17+ (or compatible JDK)

Benchmark scripts and performance results can be found in the /analysis directory.

About

A repository for exploring and analyzing backtracking algorithms across multiple programming languages.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors