This repository documents my journey through backend development, focusing on fundamental concepts of computer science. It serves as a personal knowledge base and a portfolio of projects and exercises.
This repository is organized around several key areas of backend development:
- System Programming: Exploring low-level programming concepts, memory management, and process control.
- Algorithms: Implementing and studying various algorithms, with a focus on sorting, searching, and problem-solving strategies.
- Data Structures: Building and using fundamental data structures like linked lists, trees, and hash tables.
- Graphics: Implementing basic graphics algorithms, like line drawing and raster scanning.
- Custom Libraries: Development of a personal C library (
mylibc) with common functionalities for use in different projects.
The repository is divided into several sub-repositories, each with a specific focus:
This is a project from the 42 school curriculum. The goal is to sort a stack of integers using a limited set of operations. This project challenges understanding of sorting algorithms and stack manipulation.
This directory contains solutions to various LeetCode problems, implemented in C. The problems are categorized into:
- Problem Solving: Greedy algorithms, backtracking, and concurrent programming.
- Data Structures: Implementations of various data structures.
- Graphics: Basic graphics algorithms.
- System & Network: System programming and networking exercises.