Basic knowledge of maths: Logic, Functions theory, Algebraic structure, a minimum of abstraction capability and mathematical expression. It is enough to have passed the subjects of "Algebra" and "Cálculo".
Basic knowledge of Java programming language, fundamentals of information systems and development environments. It is enough to have passed the subjects Programming Funtamentals (I & II) and Sistemas de Información.
It is recommended the student is studying: Lógica (1st semester) and Programming methodology (2nd semester).
Data structures belongs to the subject of Programming, and is part of the Común a la Rama de Informática module from Grado en Ingeniería Informática
This subject could be seen as a continuation of Programming Fundamentals II, studying new data structures from new viewpoints, in addition to its use, formal definition and implementation; with the advantage of adding the implemented data structures as external libraries.
Furthermore, Programming methodology could be seen as a continuation of this subject, in which each algorithmic scheme might have an immediate application on new data structures (ordering of lineal structures, greedy explorations or tree dynamics, optimal routes in graphs, etc.). Also, in the subject Programación declarativa (intensificación de Computación), apart from being required certain acquired knowledge (lists, recursive techniques, etc.), it will be deepend in the definition of all previously learned data structures taking into account important features related to efficiency and optimization (inheritance, higher order, infinite structures, ...).
Finally, during all these studies and also in the professional life, software apps should be implemented making use of complex data structures. Programming language provide aproppriate structures (lists, queues, etc.). The detailed analysis of these data structures is important to understand their working. In other cases, languages do not provide them (e.g. trees and graphs), and we need to add them. On the other hand, the use of data structures from a design and analysis viewpoint provide us a proper abstraction level and will boost our programming skills (recursion, modularization, etc.), which are needed in software development.
Course competences | |
---|---|
Code | Description |
BA04 | Basic knowledge about the uses and programming of computers, operating systems, data bases, and digital programmes with applications in engineering. |
CO06 | Knowledge and application of basic algorithms in digital technologies for the development of solutions, analysing their appropriateness and complexity. |
CO07 | Knowledge, design, and efficient use of types of data and structures which arise as most appropriate in problem solving. |
CO08 | Ability to analyse, design, build and maintain applications in a strong, safe, and efficient manner by selecting the most appropriate paradigms and programming languages. |
INS01 | Analysis, synthesis, and assessment skills. |
INS04 | Problem solving skills by the application of engineering techniques. |
PER01 | Team work abilities. |
PER02 | Ability to work in multidisciplinary teams. |
PER04 | Interpersonal relationship skills. |
PER05 | Acknowledgement of human diversity, equal rights, and cultural variety. |
SIS01 | Critical thinking. |
SIS03 | Autonomous learning. |
UCLM02 | Ability to use Information and Communication Technologies. |
Course learning outcomes | |
---|---|
Description | |
Ability to manage types of data, data structures, and abstract tupes of data in an appropriate manner regarding their problems, as well as their formal specifications, implementations, and use of abstract types of lineal and non-lineal data. | |
Additional outcomes | |
Not established. |
In laboratory sessions, practical exercises with linear and non-linear data structures will be done.
Training Activity | Methodology | Related Competences (only degrees before RD 822/2021) | ECTS | Hours | As | Com | Description | |
Class Attendance (theory) [ON-SITE] | Lectures | BA04 CO06 CO07 CO08 | 0.72 | 18 | N | N | Teaching of the subject matter by lecturer (MAG) | |
Individual tutoring sessions [ON-SITE] | BA04 CO06 CO07 CO08 UCLM02 | 0.18 | 4.5 | N | N | Individual or small group tutoring in lecturer¿s office, classroom or laboratory (TUT) | ||
Study and Exam Preparation [OFF-SITE] | Self-study | BA04 CO06 CO07 CO08 SIS01 SIS03 | 2.1 | 52.5 | N | N | Self-study (EST) | |
Other off-site activity [OFF-SITE] | Practical or hands-on activities | BA04 CO06 CO07 CO08 INS01 INS04 PER01 PER02 PER04 PER05 SIS03 | 0.6 | 15 | N | N | Lab practical preparation (PLAB) | |
Problem solving and/or case studies [ON-SITE] | Problem solving and exercises | BA04 CO06 CO07 CO08 PER01 PER02 PER04 PER05 SIS01 SIS03 UCLM02 | 0.6 | 15 | Y | N | Worked example problems and cases resolution by the lecturer and the students (PRO) | |
Writing of reports or projects [OFF-SITE] | Self-study | BA04 CO06 CO07 CO08 INS01 INS04 PER01 PER02 PER04 PER05 SIS03 | 0.9 | 22.5 | Y | N | Preparation of essays on topics proposed by lecturer (RES) | |
Laboratory practice or sessions [ON-SITE] | Practical or hands-on activities | BA04 CO06 CO07 CO08 INS04 PER01 PER02 PER04 PER05 | 0.6 | 15 | Y | Y | Realization of practicals in laboratory /computing room (LAB) | |
Final test [ON-SITE] | Assessment tests | BA04 CO06 CO07 CO08 INS01 INS04 | 0.3 | 7.5 | Y | Y | Final test of the complete syllabus of the subject (EVA) | |
Total: | 6 | 150 | ||||||
Total credits of in-class work: 2.4 | Total class time hours: 60 | |||||||
Total credits of out of class work: 3.6 | Total hours of out of class work: 90 |
As: Assessable training activity Com: Training activity of compulsory overcoming (It will be essential to overcome both continuous and non-continuous assessment).
Evaluation System | Continuous assessment | Non-continuous evaluation * | Description |
Final test | 50.00% | 50.00% | Compulsory activity that can be retaken (rescheduling) to be carried out within the planned exam dates of the final exam call (convocatoria ordinaria) |
Theoretical papers assessment | 15.00% | 15.00% | Non-compulsory activity that can be retaken. To be carried out before end of teaching period |
Assessment of active participation | 10.00% | 10.00% | Non-compulsory activity that can be retaken. To be carried out during the theory/lab sessions in the case of continuous assessment modality. The students of non-continuous modality will be evaluated of this activity through an alternative system in the final exam call (convocatoria ordinaria) |
Laboratory sessions | 25.00% | 25.00% | Compulsory activity that can be retaken. To be carried out during lab sessions |
Total: | 100.00% | 100.00% |
Not related to the syllabus/contents | |
---|---|
Hours | hours |
Individual tutoring sessions [PRESENCIAL][] | 4.5 |
Study and Exam Preparation [AUTÓNOMA][Self-study] | 52.5 |
Other off-site activity [AUTÓNOMA][Practical or hands-on activities] | 15 |
Writing of reports or projects [AUTÓNOMA][Self-study] | 22.5 |
Laboratory practice or sessions [PRESENCIAL][Practical or hands-on activities] | 15 |
Final test [PRESENCIAL][Assessment tests] | 7.5 |
Unit 1 (de 6): General concepts | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 3 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 1.5 |
Unit 2 (de 6): Stacks | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 2 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 3.5 |
Unit 3 (de 6): Queues | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 2 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 1.5 |
Unit 4 (de 6): Lists | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 2 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 2.5 |
Unit 5 (de 6): Graphs | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 3.5 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 2.5 |
Unit 6 (de 6): Trees | |
---|---|
Activities | Hours |
Class Attendance (theory) [PRESENCIAL][Lectures] | 5.5 |
Problem solving and/or case studies [PRESENCIAL][Problem solving and exercises] | 3.5 |
Global activity | |
---|---|
Activities | hours |
General comments about the planning: | The subject is taught in 3 x 1,5 hour sessions per week |
Author(s) | Title | Book/Journal | Citv | Publishing house | ISBN | Year | Description | Link | Catálogo biblioteca |
---|---|---|---|---|---|---|---|---|---|
Lenguaje de Programación JAVA | http://www.java.com/es | ||||||||
Goodrich, M.T., Tamassia R. , Goldwasser M.H. | Data structures and algorithms in Java | Wiley | 978-1-118-80836-8 | 2014 | http://bcs.wiley.com/he-bcs/Books?action=index&itemId=1118808576&bcsId=8950 | ||||
Martí Oliet, N., Ortega Mallén Y., Verdejo López J.A. | Estructuras de datos y métodos algoritmicos: ejercicios resueltos | Prentice Hall | 978-84-205-3849-5 | 2004 | |||||
R. Sedgewick, K. Wayne | Algorithms, 4th Edition | New Jersey, USA | Addison Wesley | 978-0321573513 | 2011 | http://algs4.cs.princeton.edu/home/ | |||
Weiss, M.A. | Data Structures and Problem Solving Using Java (Fourth Edition) | Addison-Wesley | 0-321-54140-5 | 2010 | http://users.cs.fiu.edu/~weiss/ | ||||
Weiss, M.A. | Data structures & algorithm analysis in Java (Third Edition) | Addison-Wesley | 0-132-57627-9 | 2012 | http://users.cs.fiu.edu/~weiss/#dsaajava3 | ||||
Weiss, M.A. | Estructura de datos en Java (4ª edición) | Pearson | 9788415552239 | 2014 |