Skip to content

Algorithmic and search-space problems in multiple programming languages.

License

Notifications You must be signed in to change notification settings

Qvapil/Programming-Languages-I-2021

Repository files navigation

Programming-Languages-I-2021

Algorithmic and search-space problems in multiple programming languages.

Exercises for course Programming Languages I, 6th semester 2021 of the Electrical and Computer Engineering School at the National Technical University of Athens.

The goal of these exercises was the comparison between different programming types (imperative, functional, logical, object oriented).

It was accomplished by solving various algorithmic and search-space problems, with tight time and memory constraints, in the following languages: C++, Standard ML, Prolog, Python and Java.

Summary of problems

longest: Given an array and integer k, find the longest subarray with average sum greater than k.
Solve in C++, Standard ML and Prolog.

loop_rooms: Given a 2d matrix of directions, find the total number of cells that belong in a loop.
Solve in C++, Standard ML and Python.

qssort: Given a list of integers, find the shortest sequence of moves that sort the list using a queue and a stack.
Solve in Prolog, Python and Java.

round: Given N towns and K cars, as well as an array that stores which town each car starts from, find the shortest number of right moves to move all cars to the same city and said city, provided the cars move alternatively.
Solve in Java, Standard ML and Prolog.