Universidad de Jaén

Menú local

Syllabus 2016-17 - 13312012 - Data Structure (Estructuras de datos)

Caption
  • Level 1: Tutorial support sessions, materials and exams in this language
  • Level 2: Tutorial support sessions, materials, exams and seminars in this language
  • Level 3: Tutorial support sessions, materials, exams, seminars and regular lectures in this language
DEGREE: Grado en Ingeniería informática
FACULTY: SCHOOL OF ENGINEERING OF JAÉN
ACADEMIC YEAR: 2016-17
COURSE: Data Structure
SYLLABUS
1. COURSE BASIC INFORMATION
NAME: Data Structure
CODE: 13312012 ACADEMIC YEAR: 2016-17
LANGUAGE: English LEVEL: 2
ECTS CREDITS: 6.0 YEAR: 2 SEMESTER: PC
2. LECTURER BASIC INFORMATION
NAME: ORTEGA ALVARADO, LIDIA Mª
DEPARTMENT: U118 - INFORMÁTICA
FIELD OF STUDY: 570 - LENGUAJES Y SISTEMAS INFORMÁTICOS
OFFICE NO.: A3 - 140 E-MAIL: lidia@ujaen.es P: 953212890
WEBSITE: www4.ujaen.es/~lidia
ORCID: https://orcid.org/0000-0002-7320-7382
LANGUAGE: English LEVEL: 2
3. CONTENT DESCRIPTION

Module A:   Introduction

Lesson 1: Introduction to data structures

Lesson 2: Containers. Complexity analysis

Lesson 3: Templates in C++. Operators. Memory management.

Module   B:   Vectors and lists
Lesson 4: Static and dynamic vectors.
Lesson 5: Multidimensional arrays. Bit set.
Lesson 6: Linked lists. Iteration.
Lesson 7: Doubly linked lists. Circular lists. Sparse matrices.
Lesson 8: Introduction to STL. Vector, deque and list classes. 

Module   C:   Stacks and queues .
Lesson 9: Stacks, queues and priority queues. STL adapters.

Module   D:   Trees
Lesson 10: Trees. Binary trees. Binary search trees.
Lesson 11: Balanced trees. AVL trees.
Lesson 12: Heaps. Disjoint sets.
Lesson 13: Sets and maps of STL.

Module    E:   Hashing. 
Lesson 14: Hashing types. Hash functions.
Lesson 15: Collision resolution


Module    F:   Graphs
Lesson 16: Graph data structures. Graph algorithms.

Module    G:   Multidimensional data structures.
Lesson 17: Grids. Range-trees. 
Lesson 18: K-d trees. Quadtrees.

Module    H:   File structures
Lesson 19: Basic concepts and operations.
Lesson 20: Indexing information.  
Lesson 21: B-trees

 

 

4. COURSE DESCRIPTION AND TEACHING METHODOLOGY

  • The contents  of the subject are developed in theoretical lectures, each lesson takes place in one session.
  • In the practical sessions, a set of programming exercises about the data structures are implemented
  • A total of five group tutoring sessions are scheduled to reinforce the contents, ask questions and perform exercises.

Students with special educational needs should contact the Student Attention Service (Servicio de Atención y Ayudas al Estudiante) in order to receive the appropriate academic support

5. ASSESSMENT METHODOLOGY

S1:Attendance of theoretical and practical classes (5%)

  • Class rollcall, participation in class exercises. This percentage is only computed in the theoretical and practical classes. Competence CC7R and learning result number 7.

 S2:To know the theoretical content of the course (55%)

  • Theoretical exam. The exam must have a calification of at least 5 points to pass the course. Competence CC7 and learning result number 7.

S3:Theoretical/practical exercises and class participation (5%)

  • Delivery of work. Students perform voluntaryand/or practical exercises. Class participation. This percentage is only computed during the class period. Competence CC7R and learning result number 7.

 

S4: Practical exercises in the computer lab (35%)

  • Deliveryof practical exerciseson specific dates. The student will develop a set of practical exercises delivered on fixed dates.
  • In this section the student must have a suitable qualification in order to pass the course. This percentage is computed only during the class period. Competence CC7R and learning result number 7.

The final mark is computed with the weighted averages discussed above. This mark must be greater than 5 points. 

The students may be urged to leave their their notes and electronic devices in a secluded place in order not to be used during the examination.

6. BOOKLIST
MAIN BOOKLIST:
  • Data structures and algorithms in C++ . Edition: -. Author: Goodrich, Michael T. Publisher: Hoboken, NJ : John Wiley and Sons, 2011  (Library)
ADDITIONAL BOOKLIST:
  • File Structures: an object-oriented approach with C++. Edition: -. Author: Folk, Michael J.. Publisher: Reading: Addison-Wesley, cop. 1998  (Library)
  • Foundations of multidimensional and metric data structures . Edition: -. Author: Samet, Hanan. Publisher: Amsterdam : Elsevier : Morgan Kaufmann, cop. 2006  (Library)