Breadcrumb

XSL Content

Structures of Data and Algorithms27700

Centre
Faculty of Engineering - Bilbao
Degree
Bachelor's Degree in Computer Engineering in Management and Information Systems
Academic course
2024/25
Academic year
2
No. of credits
6
Languages
Spanish
Basque
Code
27700

TeachingToggle Navigation

Distribution of hours by type of teaching
Study typeHours of face-to-face teachingHours of non classroom-based work by the student
Lecture-based4567.5
Applied computer-based groups1522.5

Teaching guideToggle Navigation

Description and Contextualization of the SubjectToggle Navigation

This subject will allow students to acquire the skills to develop software projects of medium complexity, emphasizing aspects such as modularity, data structures and measurement of the efficiency of algorithms.



In addition, recursion-based programming techniques will be introduced, along with advanced data structures, including lists, queues, stacks, trees, hash tables, and graphs.

Skills/Learning outcomes of the subjectToggle Navigation

Competencies:



- M02CM01. Ability to design, develop, select and evaluate computer applications and systems, ensuring their reliability, security and quality, in accordance with ethical principles and current legislation and regulations.



- M02CM06. Knowledge and application of the basic algorithmic procedures of computer technologies to design solutions to problems, analyzing the suitability and complexity of the proposed algorithms.



- M02CM07. Knowledge, design and efficient use of the most appropriate data types and structures to solve a problem



- M02CM08. Ability to analyze, design, build and maintain applications in a robust, safe and efficient way, choosing the most appropriate paradigm and programming languages.

Theoretical and practical contentToggle Navigation

Topic 1. Analysis of algorithms. The cost function. Function orders. Analysis of sorting and search algorithms. Practical exercises.



Topic 2. Recursive design of algorithms. Recursive design methodology. Implementation of recursive programs. Practical examples and exercises.



Topic 3. Abstract data types. Linear data structures: Lists, Stacks and Queues. Examples of applications with these structures. Efficiency analysis.



Topic 4. Hash tables. Hashing function. Efficiency analysis of hash tables. Open and closed hashing.



Topic 5. Trees. Binary Trees. Binary search trees. Analysis of the efficiency of algorithms on trees: search and traversals.



Topic 6. Graphs. Representation and algorithms of graph traversals.



Topic 7. Analysis, Design and Implementation of solutions for the resolution of a problem.

MethodologyToggle Navigation

The lectures (M) will be used for the exposition and discussion of the theoretical concepts that will later be applied in the practical work. Likewise, the concepts acquired will be reinforced by solving exercises, either individually or in small groups.



During the COMPUTER OR LABORATORY PRACTICES (GO) the practical work associated with the subject will be developed under the supervision of the teacher.

Group work will be required to solve problems or proposed projects.



Throughout the course a practice structured in four deliveries will be developed. It will be developed autonomously by the student, with the guidance of the teacher, and the result will be reflected in four software modules in operation and the documentation of the set of work carried out. The evaluation of this activity will have an impact of 40% in the evaluation process.



Within the lecture activities, written exercises will be considered both in the classroom and in the laboratory to complete the other 60% of the evaluation.



ONLINE CLASSES (EXCEPTIONAL SITUATIONS)

In cases where capacity limitations require it, a second classroom will be enabled at the same time to allow the development of the class to be followed (using streaming or similar techniques). In the event that the health situation requires it, teaching will become online, for which the resources provided by the university will be used (eGela, videoconference, ...)



In the event that classes cannot be held in person, classes will be held online. As this is an alternative to an exceptional situation, all the tools and grading percentages that take place during this type of class, and are affected by the situation, will be adapted to the online world by the teacher(s) of the subject. These adaptations will be properly disseminated through eGela or other usual channels of communication with that teacher and with their students. The date/time of these classes will be the same as that marked by the center in its face-to-face calendar.

Assessment systemsToggle Navigation

  • Final Assessment System
  • Tools and qualification percentages:
    • Written test to be taken (%): 60
    • Team projects (problem solving, project design)) (%): 40

Ordinary Call: Orientations and DisclaimerToggle Navigation

The subject has two modes of evaluation: the final (or overall) evaluation and the continuous evaluation. Continuous assessment, to which students may voluntarily take part, is offered exclusively to students who can carry out continuous monitoring of the subject within the established framework of dedication and attendance at face-to-face activities, as indicated in article 43 of the current regulations regarding student assessment.



Pre-registration in the continuous evaluation mode will take place on the established dates. The pre-registration will become final after the confirmation of the request by the student on the dates established (by week 12 with 70% of the weight of the evaluation already taken) and after verification of the partial performance by the teaching staff.



The different activities of continuous evaluation with their corresponding weights will be the following:

- Group project with Deliverables (40%)

- Partial and final exams (60%)



Continuous assessment will require attendance at face-to-face classes, practical activities, assignments and exams. To pass the subject (final grade), the student must obtain at least 3 points in the overall of the different exams (partial and final), out of a total of 6 points.



In the event that the overall mark of the exams does not exceed 3 points (out of a total of 6), the mark of the practical works will not be included in the average, that is, the final mark will be calculated by weighting the mark of the exams over 10.



The FINAL evaluation for students who do not carry out the continuous evaluation consists of:

- Final Exam (100%)



The test will consist of a written exam that will cover 100% of the contents of the subject. To take this test, it is recommended that you have previously completed the practical work for the subject.



NO SHOW:

- When the student does not appear for the final written exam, they will obtain a "Not Presented" qualication regardless of their participation in the continuous evaluation.



COPY CASES:

Article 44 of the current regulations regarding the evaluation of students will be applied.



ONLINE EXAM (EXCEPTIONAL SITUATIONS)

In the event that the exam cannot be carried out in person, the exam will be carried out electronically. As this is an alternative to an exceptional situation, this type of exam will follow the structure, guidelines and specificities established by the teacher(s) of that subject, and which will be properly disseminated through eGela or other usual channels of communication with that teacher and with your students. The date/time of said exam will be, as always, the one marked by the center in its official calendar.





Extraordinary Call: Orientations and DisclaimerToggle Navigation

The EXTRAORDINARY evaluation consists of:

- Final Exam (100%)



This will consist of a written exam that will cover 100% of the contents of the subject. To take this test, it is recommended that you have previously completed the practical work for the subject.



ONLINE EXAM (EXCEPTIONAL SITUATIONS)

In the event that the exam cannot be carried out in person, the exam will be carried out electronically. As this is an alternative to an exceptional situation, this type of exam will follow the structure, guidelines and specificities established by the teacher(s) of that subject, and which will be properly disseminated through eGela or other usual channels of communication with that teacher and with your students. The date/time of said exam will be, as always, the one marked by the center in its official calendar.

Compulsory materialsToggle Navigation

- UPV/EHU Moodle.
- Course notes.
- Support programs, statements of work and document templates.

BibliographyToggle Navigation

Basic bibliography

Book title: Algorithms, 4th Edition.

Autor: Robert Sedgewick and Kevin Wayne.

Editor: Pearson. (http://algs4.cs.princeton.edu/home/)



Book title: Java software Structures, Third Edition

Autor: LEWIS, JOHN; CHASE, JOSEPH

Editor: Pearson Educación, 2010



Book title: Competitive Programming 3

Autor: Halim, Steven; Halim, Felix

2013



In-depth bibliography

Título Libro: ESTRUCTURAS DE DATOS EN JAVA
Autor: M. Allen Weiss
Editor: Addison Wesley, 2001

Título Libro: Estructuras de datos y métodos algorítmicos. Ejercicios resueltos
Autor: N. Martí, Y. Ortega, J.A. Verdejo.
Editor: Pearson/Prentice Hall, 2003. ISBN 84-205-3849-3.

Web addresses

http://es.wikipedia.org/wiki/Estructura_de_datos

http://en.wikipedia.org/wiki/List_of_data_structures

http://java.sun.com

http://www.eclipse.org/

https://www.geeksforgeeks.org/competitive-programming-a-complete-guide/?ref=shm

Hash Code is a team programming competition, organized by Google, for students and professionals around the world. You pick your team and programming language and we pick an engineering problem for you to solve. This year’s contest kicks off with a Qualification Round, where your team can compete virtually from wherever you’d like, alongside your virtual Hub. Top teams will then be invited to compete from our virtual World Finals.
https://codingcompetitions.withgoogle.com/hashcode/archive

GroupsToggle Navigation

16 Teórico (Spanish - Tarde)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
1-14

17:00-18:00 (1)

15:00-17:00 (2)

2-3

14:00-15:00 (3)

4-4

14:00-15:00 (4)

Teaching staff

Classroom(s)

  • P5I 9A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (1)
  • P5I 9A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (2)
  • P5I 9A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (3)
  • P5I 9A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (4)

16 Applied computer-based groups-1 (Spanish - Tarde)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
2-2

18:00-20:00 (1)

20:00-20:30 (2)

4-4

18:00-20:00 (3)

20:00-20:30 (4)

6-6

18:00-20:00 (5)

8-8

18:00-20:00 (6)

10-10

18:00-20:00 (7)

12-12

18:00-20:00 (8)

14-14

18:00-20:00 (9)

Teaching staff

Classroom(s)

  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (1)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (2)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (3)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (4)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (5)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (6)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (7)

16 Applied computer-based groups-2 (Spanish - Tarde)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
1-1

18:00-20:00 (1)

20:00-20:30 (2)

3-3

18:00-20:00 (3)

20:00-20:30 (4)

5-5

18:00-20:00 (5)

7-7

18:00-20:00 (6)

9-9

18:00-20:00 (7)

11-11

18:00-20:00 (8)

13-13

18:00-20:00 (9)

Teaching staff

Classroom(s)

  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (1)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (2)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (3)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (4)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (5)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (6)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (7)

16 Applied computer-based groups-3 (Spanish - Tarde)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
1-1

18:00-20:00 (1)

20:00-20:30 (2)

3-3

18:00-20:00 (3)

20:00-20:30 (4)

5-5

18:00-20:00 (5)

7-7

18:00-20:00 (6)

9-9

18:00-20:00 (7)

11-11

18:00-20:00 (8)

13-13

18:00-20:00 (9)

Teaching staff

Classroom(s)

  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (1)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (2)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (3)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (4)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (5)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (6)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (7)

46 Teórico (Basque - Tarde)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
1-3

15:00-17:00 (1)

15:00-16:00 (2)

4-14

15:00-17:00 (3)

15:00-16:00 (4)

6-8

19:00-20:00 (5)

Teaching staff

Classroom(s)

  • P3I 9A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (1)
  • P3I 9A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (2)
  • P3I 9A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (3)
  • P3I 9A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (4)
  • P3I 9A - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (5)

46 Applied computer-based groups-1 (Basque - Tarde)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
1-1

16:00-18:00 (1)

18:00-18:30 (2)

3-3

16:00-18:00 (3)

18:00-18:30 (4)

5-5

16:00-18:00 (5)

7-7

16:00-18:00 (6)

9-9

16:00-18:00 (7)

11-11

16:00-18:00 (8)

13-13

16:00-18:00 (9)

Teaching staff

Classroom(s)

  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (1)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (2)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (3)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (4)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (5)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (6)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (7)

46 Applied computer-based groups-2 (Basque - Tarde)Show/hide subpages

Calendar
WeeksMondayTuesdayWednesdayThursdayFriday
2-2

16:00-18:00 (1)

18:00-18:30 (2)

4-4

16:00-18:00 (3)

18:00-18:30 (4)

6-6

16:00-18:00 (5)

8-8

16:00-18:00 (6)

10-10

16:00-18:00 (7)

12-12

16:00-18:00 (8)

14-14

16:00-18:00 (9)

Teaching staff

Classroom(s)

  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (1)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (2)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (3)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (4)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (5)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (6)
  • P8I 9L - ESCUELA DE INGENIERIA DE BILBAO-EDIFICIO II (7)