PROBLEMAS_EM_C
A repository focused on study, practice, and growth in C programming, bringing together exercises, classical algorithms, advanced challenges, data structure implementations, sorting benchmarks, concurrency problems, and code experiments.
The purpose of this project is not only to store solutions, but also to serve as a study progress map, showing my evolution in C from basic programming logic to more demanding topics such as memory manipulation, data structures, time and space complexity, sorting algorithms, problem solving, and threads.
What this repository strengthens
- programming logic;
- C syntax and structured programming;
- arrays, matrices, strings, and pointers;
- dynamic memory allocation;
- linked lists, stacks, queues, trees, and hash tables;
- recursion and mathematical reasoning;
- sorting and searching algorithms;
- complexity analysis;
- problem solving under time and space constraints;
- concurrency and synchronization concepts.
Repository Index
Exercise Lists
- List 1 — basic logic, arrays, matrices, mathematical checks, and simulations
- List 2 — strings, ASCII processing, validation, and text reconstruction
- List 3 — structs, sorting rules, dynamic memory, simulations, and hash tables
- List 4 — linked lists, ordered insertion, alphabetical organization, and ranking rules
- List 5 — recursion, Fibonacci, GCD, and Josephus problem
- List 6 — queues, stacks, and linked list-based data structures
- List 7 — stack simulation, queue grouping, duplicate removal, and string ordering
- List 8 — doubly linked lists, circular lists, Merge Sort, and Quick Sort
- List 9 — circular list simulations, elimination problems, and time-based analysis
- List 10 — binary search trees, searching algorithms, and hash tables
Specific Content
- List Sort — sorting algorithms, benchmarks, comparisons, swaps, and movements
- Desafios — harder algorithmic challenges and optimized solutions
- Infra de Software — threads, concurrency, synchronization, and classic OS problems
- C_random — test code, experiments, drafts, and miscellaneous implementations
Repository Organization
Each main folder contains its own README.md with a more detailed explanation of:
- the contents covered;
- the purpose of the folder;
- the skills strengthened;
- the difficulty level of each problem or implementation;
- time and space complexity when relevant.
This root README works as a general overview and navigation point for the repository.
Goal
To build a solid foundation in C through continuous practice, documenting solutions and studies that help develop not only the ability to code, but also to analyze, optimize, compare, and justify algorithmic choices.