Skip to content

ChristianPrendin/APIProject

Repository files navigation

Algorithmic Efficiency Project

Overview

This project is a culmination of my studies in 'Algoritmi E Principi Dell'Informatica' (Algorithms and Principles of Computer Science) during my bachelor's degree. It was a core component, contributing significantly to my final academic evaluation. The primary focus of this project was to design and implement efficient algorithms and data structures, demonstrating a strong understanding of computational performance.

Professor: Davide Martinenghi

Performance Highlights

I achieved the highest possible score, a 30L/30, by rigorously optimizing for both memory usage and execution time. This table summarizes the performance benchmarks:

Score Memory (MiB) Time (s) Result
18 128 19
21 118 15
24 108 10
27 98 6
30 88 4
30L 78 1

Tools & Technologies

This project was developed using a standard set of robust tools:

Category Tool
IDE VSCode
Compiler gcc
Memory Profiling Valgrind - Massif
Operating System MacOS

Experience It Yourself!

Curious to see the project specifications and my approach? You can explore the full details:

To replicate the 30L/30 score, your solution for test case 111 must execute in under 1 second and utilize less than 78 MB of memory.

How to Run Tests

Follow these simple steps to compile and test your code against the provided test cases (example uses test_1.txt):

  1. Compile: make your_c_file (replace your_c_file with your actual C file name).
  2. Execute: ./your_c_file > output.txt < Tests/test_1.txt
  3. Verify: Compare your generated output.txt with the expected output in Tests/test_1.output.txt to check for correctness.

Contact

I'm open to collaborations, discussions, or any inquiries you might have regarding this project. Feel free to reach out!

Send me an Email

License

This software is provided under the terms of the MIT License. For complete details, please refer to the LICENSE file.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages