Skip to main content

Proyectos

This repository contains a set of small, self-contained programs built for learning and practice. Each project focuses on a specific algorithm or programming concept, implemented from scratch without external frameworks. The projects span two languages — C++ for performance-sensitive search algorithms and Python for interactive console programs — covering topics from AI search strategies to linear algebra and classic recursion.

8-Puzzle Solver

Solve the classic 8-puzzle using BFS, DFS, and heuristic search with a full interactive menu.

Sudoku Solver

Solve a 9x9 Sudoku board using breadth-first and depth-first search strategies.

Matrix Operations

Add, subtract, and multiply matrices through an interactive Python console menu.

Gauss Elimination

Solve systems of linear equations using NumPy.

Factorial

Recursive factorial implementation in both C++ and Python.

Fibonacci

Recursive Fibonacci sequence implementation in C++.

What’s inside

The 8-Puzzle and Sudoku solvers demonstrate three fundamental search strategies:
  • BFS (Breadth-First Search) — explores all states level by level, guaranteed to find the shortest path
  • DFS (Depth-First Search) — explores deeply along a branch before backtracking, uses less memory
  • Heuristic search — uses a priority queue and an evaluation function to reach the goal faster (8-Puzzle only)
Both projects use class-based design in C++ with state representation, history tracking to avoid cycles, and step-by-step solution output.
Matrix Operations provides a looping console menu for addition, subtraction, and multiplication of matrices of any size.Gauss Elimination accepts a coefficient matrix and result vector from the user and solves the system using numpy.linalg.solve.
Factorial and Fibonacci demonstrate classic recursion patterns. Both are implemented in their simplest recursive form — ideal as a reference for understanding base cases and recursive calls.

Language breakdown

LanguageFilesPurpose
C++8-PUZZLE.cpp, Sudoku.cpp, Algoritmos sencillos/FactorialRecursivo.cpp, Algoritmos sencillos/FibonacciRecursivo.cppSearch algorithms and recursive math
PythonOperarMatrices.py, GaussSimple.py, Algoritmos sencillos/FactorialRecursivo.pyInteractive console programs and NumPy

Concepts covered

BFS & DFS

Graph traversal fundamentals

Heuristic search

Priority-queue driven search

Recursion

Base cases and recursive calls