Skip to content

Abstract data types and their manipulation implemented to solve typical college assignments of second year subjects of Informatics Engineering regarding efficient data structures.

Notifications You must be signed in to change notification settings

Mars-Wave/Typical-College-ADTs-Solved-Exercises

Repository files navigation

Typical College ADTs Solved Exercises

What is this:

This repository is a collection of typical lab exercises for subjects regarding efficient algorithms USING data structures or others of the sorts.

It contains solved exercises about linked lists, stacks, trees, hash tables and the creation of efficient data structures to store and find data based on some client's specifications using the aforementioned as building blocks.

Every folder contains one of these exercises with the statement. This is all educational, divulgative code containing my solutions to some classic college assignments with the lowest computational complexity achievable.

How to use:

Inside each folder there is a PDF with the assignment description. The code used to make it work is in the rest of the files, which have to be compiled and ran by a C++ compiler/IDE of your choice. I would like to point out here that the files in each folder with each assignment are the ones necessary to make it run, not the best nor worst ones to approach and solve the problem, they are just the types I chose to use. The complexity order of the solution is the lowest one achievable for each problem though.

How to learn from it:

My advice is to read the assignment, then get the files that you think you will need to complete the task that it specifies from any folder, then after you finish your version of the solution make sure the computational complexity is the bare minimum you can achieve and the input/output works, then compare it to my files. If the complexity order is the same, regardless of which abstract data types you chose to use, congratulations, you completed the exercise successfully.

Sometimes there exist some special cases regarding input/output that can be tricky, if you find yourself in a dead end my advice is that you refrain from looking at my files and start over at least once with a different approach. If your computational cost is of a higher order than the ones in my solution, know that some teachers can fail you for it even if the input/output is perfect, so you should rework your solution.

Hope you find this repository useful, MW.

Disclaimer:

The abstract data types in the folders like the stacks, linked lists and queues, as well as the trees were not coded by me, they were given to me by my professors.

My code is was what was asked in the assignment descriptions, ergo, what you will get asked in college in these subjects. This includes the Source.cpp files and every main function as well as some ADT implementations, the ones that are explicitly asked in the problem assignment.

For these subjects the standard is that you get an implementation of the ADTs to use, or use the libraries of the language at hand. So you can use the ADTs that were given to me since I included them in the files, some other ADT implementations or the C++ ADTs, and as long as you use the analog functions the code will work just the same.

About

Abstract data types and their manipulation implemented to solve typical college assignments of second year subjects of Informatics Engineering regarding efficient data structures.

Topics

Resources

Stars

Watchers

Forks

Languages