This repository was used as a personal study project to practice and learn various algorithms, data structures, and general programming techniques in Java.
Throughout the different projects and labs, you will find implementations and exercises on a variety of topics, including (but not limited to):
- Breadth-First Search (BFS)
- Depth-First Search (DFS)
- Binary Search
- Graph traversal and representation
- Trees and recursive algorithms
- Sorting algorithms (e.g., merge sort, quicksort)
- Hash maps and sets
- Linked lists and stacks/queues
- File I/O and basic Java GUI
- Simple simulations and modeling
- Problem solving with backtracking
- Data filtering and aggregation
Note:
This repository is not well-organized. At the time of writing and working on these projects, I was a beginner both in Java and in using Git.
As a result, you might find:
- Inconsistent folder structures
- Varying project naming conventions
- Occasional duplicate or similar code in different folders
- Some folders may contain only partial solutions or experimental code
- Comments and documentation may be sparse or in Italian
Despite the messiness, the code here represents a valuable learning journey and contains many classic examples and exercises useful to students or anyone learning Java and fundamental algorithms.