IDENTIFYING DATA 2023_24
Subject (*) DATA STRUCTURES Code 17234115
Study programme
Bachelor's Degree in Computer engineering (2010)
Cycle 1st
Descriptors Credits Type Year Period
6 Compulsory Second 2Q
Language
Català
Department Computer Engineering and Mathematics
Coordinator
DUCH GAVALDÀ, JORDI
E-mail jordi.duch@urv.cat
david.gameza@urv.cat
marc.ruiz@urv.cat
ramon.castells@urv.cat
juanbautista.perez@urv.cat
Lecturers
DUCH GAVALDÀ, JORDI
GÁMEZ ALARI, DAVID
RUIZ RODRÍGUEZ, MARC
CASTELLS AMAT, RAMON
PÉREZ MINGOT, JUAN BAUTISTA
Web http://https://campusvirtual.urv.cat/local/alternatelogin/index.php
General description and relevant information <p>GENERAL DESCRIPTION OF THE SUBJECT:The subject Data Structures provides all the necessary knowledge to be able to design, program and use efficient data structures to store and access information. The main algorithms for traversing and searching for data within these structures are also introduced.</p>

Competences
Type A Code Competences Specific
 CM7 Have knowledge of, design and efficiently use the most suitable data types and structures for solving a problem.
 CM15 Have knowledge of and apply the fundamental principles and basic techniques of intelligent systems and their practical application.
Type B Code Competences Transversal
Type C Code Competences Nuclear

Learning outcomes
Type A Code Learning outcomes
 CM7 Understand basic data structures.
Program a concrete data structure.
Design complex data structures.
Determine the most appropriate data structure for a certain problem.
Design and program algorithms to analyse and modify data structures.
 CM15 Can apply the basic techniques of intelligent systems.
Type B Code Learning outcomes
Type C Code Learning outcomes

Contents
Topic Sub-topic
Abstract Data Types Introduction to ADTs
Static and dynamic implementations
Storage of ADTs
Linear data structures Introduction
Stacks, queues and lists
List variants
Storage of linear EDs
Hash tables Introduction
Hashing functions
Implementations of hash tables
Storage of hash tables
Trees Introduction
Binary Trees, Heaps, Binary Search Trees
B trees and variants. B tree storage.
Graphs Introduction
Graph implementations
Bipartite graphs - multilists
Data Structures Design & Agorithms Complex Data Structures Design
Data Structure Traversal algorithms
Data Structure Analysis algorithms

Planning
Methodologies  ::  Tests
  Competences (*) Class hours
Hours outside the classroom
(**) Total hours
Introductory activities
2 0 2
Lecture
CM7
CM15
24 48 72
IT-based practicals in computer rooms
CM7
CM15
24 42 66
IT-based practicals in computer rooms
CM7
CM15
2 0 2
Personal attention
2 0 2
 
Extended-answer tests
CM7
CM15
4 0 4
Practical tests
CM7
CM15
2 0 2
 
(*) On e-learning, hours of virtual attendance of the teacher.
(**) The information in the planning table is for guidance only and does not take into account the heterogeneity of the students.

Methodologies
Methodologies
  Description
Introductory activities Presentation of the subject
Lecture The theoretical content is presented to the students. Examples and problems will be made to practice the introduced concepts.
IT-based practicals in computer rooms Students make guided examples of application of theoretical concepts. There are also activities that require the student to understand the theoretical concepts for their correct development.
IT-based practicals in computer rooms Support and resolution of doubts, guidance in the resolution of exercises and practical activities.
Personal attention Support and resolution of doubts

Personalized attention
Description

The personalized attention will be carried out in person during the hours of attention to the student of the professors in the office of the professor. Non-face-to-face support will also be provided using the synchronous and asynchronous communication tools provided by moodle / teams.


Assessment
Methodologies Competences Description Weight        
Extended-answer tests
CM7
CM15
Tests to evaluate the theoretical knowledge of the subject. 50%
Practical tests
CM7
CM15
Programming exercises of data structures and algorithms in Java 50%
Others  
 
Other comments and second exam session

To pass the course you must have a grade higher than 5 in the overall development tests, all practices delivered and approved, and the final grade of the subject must be higher than 5.

In the event that the student does not pass the assessment in the 1st call, he / she has mechanisms to recover the pending part (s):

  • The recovery of the development test part is done through a written exam.
  • The recovery of practices is done by delivering the pending practices and these not passed so far.

During the exams it will not be possible to use any communication and data transmission device, nor to use connected devices such as watches or similar. Failure to comply with this point will automatically result in failure to pass the exam.


Sources of information

Basic
  • J.Lewis, J.Chase, Estructuras de datos con Java. Diseño de estructuras y algoritmos, Pearson-Addison Wesley, 2006
  • M.A.Weiss, Estructuras de datos en Java, Addison Wesley, 2000
Complementary

Recommendations

Subjects that are recommended to be taken simultaneously
DISCRETE MATHEMATICS II/17234010

Subjects that it is recommended to have taken before
DISCRETE MATHEMATICS I/17234009
PROGRAMMING/17234114
(*)The teaching guide is the document in which the URV publishes the information about all its courses. It is a public document and cannot be modified. Only in exceptional cases can it be revised by the competent agent or duly revised so that it is in line with current legislation.