Skip to content

Latest commit

 

History

History
46 lines (25 loc) · 3.58 KB

File metadata and controls

46 lines (25 loc) · 3.58 KB

Tasks-Algorithm_and_Data_Structures-SI-CIN-UFPE-2023.1

Tasks for the Algorithm and Data Structures course of the Information Systems (SI) undergraduate program at the Center for Informatics (CIn) of the Federal University of Pernambuco (UFPE), a course I took in 2023.

The course grade is composed of several task lists and a project. This repository is for the tasks, and the project is in this other repository: https://github.com/luiz-linkezio/The_Cure-Prim_Algorithm.

Course Syllabus

Basic concepts of algorithms; basic dynamic algorithms and data structures; algorithm design techniques; algorithm complexity concepts.

File Organization

In the Lists directory, there are several folders containing the tasks for each list. Each list has a specific theme, and each folder within each list contains a folder for each task. These task folders contain an .md file showing the task statement and another file with the solution to the problem in code format, made by me.

The symbol ✅ means that I was able to successfully complete the task.

Tasks Proposal

The tasks in this repository are problems that should be solved using specific algorithms, such as Doubly Linked Lists and Trees, for example. These activities aim to introduce students to algorithm concepts and the algorithms themselves.

The tasks were hosted on a platform called Dikastis, where students had an account with access to view the problem statements and test the codes to solve the problems. The submission and verification of activities were also done on this platform. The platform supported only three programming languages: Python, Java, and Haskell.

The tasks have the following format: There is a problem in the statement, and the student must create a code that will receive one or more inputs and produce one or more outputs. The student should place the code on Dikastis On the task's statement page, if the code is approved, the student completes the task and receives its score. If the code is disapproved, the student can make as many attempts as they want until the deadline of the assignment list. If the deadline passes and the student is unable to complete a task, they might still receive a partial grade depending on the state of the code. Additionally, the vast majority of tasks required the application of some algorithm presented in the course. Otherwise, the task would not be accepted, and the student would not receive a score even if they solved what the statement asked for.

Extra Information (rules and other details):

  • Students would work on one list at a time and had a deadline to submit the tasks for that list.
  • Each list had a minimum and maximum score ranging from 0 to 10, respectively.
  • Students and tasks were monitored to prevent copying of answers from other students.
  • The questions had something called "code time limit," which is the maximum time the code can take to run completely. Each question had its time limit described in the statement.

Links:

Dikastis website: https://dikastis.com.br

Official Python website: https://www.python.org

Official Java website: https://www.java.com/pt-BR/

Official Haskell website: https://www.haskell.org

CIn website: https://portal.cin.ufpe.br/

Website of the Information Systems (SI) undergraduate program: https://portal.cin.ufpe.br/graduacao/sistemas-de-informacao/

UFPE website: https://www.ufpe.br/