Guías Docentes Electrónicas
1. General information
Course:
DATA STRUCTURES
Code:
42312
Type:
CORE COURSE
ECTS credits:
6
Degree:
405 - DEGREE IN COMPUTER SCIENCE ENGINEERING (TA)
Academic year:
2022-23
Center:
15 - FACULTY OF SOCIAL SCIENCES AND INFORMATION TECHNOLOGIES
Group(s):
60 
Year:
2
Duration:
First semester
Main language:
Spanish
Second language:
Spanish
Use of additional languages:
English Friendly:
Y
Web site:
Bilingual:
N
Lecturer: ALFONSO NIÑO RAMOS - Group(s): 60 
Building/Office
Department
Phone number
Email
Office hours
2.11
TECNOLOGÍAS Y SISTEMAS DE INFORMACIÓN
6474
alfonso.nino@uclm.es

2. Pre-Requisites

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).

3. Justification in the curriculum, relation to other subjects and to the profession

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
deep 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 professional life, software apps should be implemented making use of complex data structures. Programming
languages 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 provides us a proper abstraction level and will boost our programming skills (recursion, modularization, etc.), which are needed in software
development.


4. Degree competences achieved in this course
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 an international context.
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.
5. Objectives or Learning Outcomes
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
Description
Not established
6. Units / Contents
  • Unit 1: General concepts
  • Unit 2: Stacks
  • Unit 3: Queues
  • Unit 4: Lists
  • Unit 5: Graphs
  • Unit 6: Trees
ADDITIONAL COMMENTS, REMARKS

In laboratory sessions, practical exercises with linear and non-linear data structures will be done.


7. Activities, Units/Modules and Methodology
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
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
Study and Exam Preparation [OFF-SITE] Self-study BA04 CO06 CO07 CO08 SIS01 SIS03 2.1 52.5 N N Self-study
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
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
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
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
Final test [ON-SITE] Assessment tests BA04 CO06 CO07 CO08 INS01 INS04 0.3 7.5 Y Y Final exam including all topics
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).

8. Evaluation criteria and Grading System
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% 0.00%
Non-compulsory activity that can be retaken. To be carried out before the end of the 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 by the continuous assesment students. Non-continuous evaluation students will be evaluated with an alternative system.
Laboratory sessions 25.00% 25.00% Compulsory activity that can be retaken. To be carried out during lab sessions
Total: 100.00% 100.00%  
According to art. 4 of the UCLM Student Evaluation Regulations, it must be provided to students who cannot regularly attend face-to-face training activities the passing of the subject, having the right (art. 12.2) to be globally graded, in 2 annual calls per subject , an ordinary and an extraordinary one (evaluating 100% of the competences).

Evaluation criteria for the final exam:
  • Continuous assessment:
    In compulsory activities, a minimum mark of 40% is required in order to pass that activity and have the possibility to therefore pass the entire subject. The
    evaluation of the activities will be global and therefore must be quantified by means of a single mark. If the activity consists of several sections, each section may
    be evaluated separately provided students are informed in writing of this evaluation criterion at the beginning of the academic year. In the case of the activities
    that may be retaken (i.e., rescheduling), an alternative activity or test will be offered in the resit/retake exam call (convocatoria extraordinaria).
    The final exam will be common for all the theory/laboratory groups of the subject and will be evaluated by the lecturers of the subject in a serial way, i.e., each
    part of the final exam will be evaluated by the same lecturer for all the students.
    A student is considered to pass the subject if she/he obtains a minimum of 50 points out of 100, taking into account the points obtained in all the evaluable
    activities, and also have passed all the compulsory activities.
    For students who do not pass the subject in the final exam call (convocatoria ordinaria), the marks of activities already passed will be conserved for the
    resit/retake exam call (convocatoria extraordinaria). If an activity is not recoverable, its assessment will be preserved for the resit/retake exam call (convocatoria extraordinaria) even if it has not been passed. In the case of the passed recoverable activities, the student will have the opportunity to receive an alternative evaluation of those
    activities in the resit/retake exam call and, in that case, the final grade of the activity will correspond to the last grade obtained.
    The mark of the passed activities in any call, except for the final exam, will be conserved for the subsequent academic year at the request of the student, provided
    that mark is equal or greater than 50% and that the activities and evaluation criteria of the subject remain unchanged prior to the beginning of that academic
    year.
    The failure of a student to attend the final exam will automatically result in her/him receiving a "Failure to attend¿ (no presentado). If the student has not passed
    any compulsory evaluation activity, the maximum final grade will be 40%
  • Non-continuous evaluation:
    Students who are unable to attend training activities on a regular basis may apply at the beginning of the semester for the non-continuous assessment mode. Similarly, if a student who is undergoing continuous assessment incurs any circumstance that prevents her/him from regularly attending the classroom-based training activities, she/he may renounce the accumulated mark in continuous assessment and apply for the non-continuous assessment mode.
    In the same way, the student may change to the non-continuous evaluation mode as long as she/he has not participated during the teaching period in evaluable activities that together account for at least 50% of the total mark of the subject. If a student has reached this 50% of the total obtainable mark, or the teaching period is over, she/he will be considered in continuous assessment without the possibility of changing to non-continuous evaluation mode.
    Students who take the non-continuous assessment mode will be globally graded, in 2 annual calls per subject , an ordinary and an extraordinary one (evaluating 100% of the competences), through the assessment systems indicated in the column "Non-continuous assessment".
    In the "non-continuous assessment" mode, it is not compulsory to keep the mark obtained by the student in the activities or tests (progress test or partial test) taken in the continuous assessment mode.

Specifications for the resit/retake exam:
Evaluation tests will be conducted for all recoverable activities
Specifications for the second resit / retake exam:
Same characteristics as the resit/retake exam call
9. Assignments, course calendar and important dates
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
Study and Exam Preparation [AUTÓNOMA][Self-study] 2.5

Unit 6 (de 6): Trees
Activities Hours
Class Attendance (theory) [PRESENCIAL][Lectures] 5.5
Study and Exam Preparation [AUTÓNOMA][Self-study] 3.5

Global activity
Activities hours
General comments about the planning: The subject is taught in 3 x 1,5 hour sessions per week. The planning can be modified in the event of unforeseen causes.
10. Bibliography and Sources
Author(s) Title Book/Journal Citv Publishing house ISBN Year Description Link Catálogo biblioteca
Goodrich, M.T., Tamassia R. , Goldwasser M.H. Data structures and algorithms in Java Wiley 978-1-118-80836-8 2 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 2 2003  
Oracle Lenguaje de Programación JAVA Oracle http://www.java.com/es  
R. Sedgewick, K. Wayn Algorithms, 4th Edition 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. Estructura de datos en Java (4ª edición) Pearson 9788415552239 2014  



Web mantenido y actualizado por el Servicio de informática