| Responsable: | Conrado Martínez Parra (conrado |
| Altres: | Amalia Duch Brown (duch Ana Edelmira Pasarella Sanchez (edelmira Carles Franquesa Niubo (carles.franquesa-niubo Gabriel Alejandro Valiente Feruglio (valiente Maria Teresa Abad Soriano (mabad |
| Crèdits | Dept. | Tipus | Requisits |
|---|---|---|---|
| 7.5 (6.0 ECTS) | LSI |
|
PRAP
- Pre-requisit per la EI , ETIG PRED - Pre-requisit per la EI , ETIG PS - Pre-requisit per la ETIS |
| Responsable: | Conrado Martínez Parra (conrado |
| Altres: | Amalia Duch Brown (duch Ana Edelmira Pasarella Sanchez (edelmira Carles Franquesa Niubo (carles.franquesa-niubo Gabriel Alejandro Valiente Feruglio (valiente Maria Teresa Abad Soriano (mabad |
Proveir l'alumne de les tècniques algorísmiques bàsiques que permeten abordar el desenvolupament de programes correctes i eficients per a resoldre problemes no trivials. Les tècniques bàsiques esmentades inclouen coneixements teòrics i pràctics, habilitats, experiències i sentit crític, totes elles fonamentades en teories i tècniques sòlides, comprovades i ben establertes.
Hores estimades de:
| T | P | L | Alt | L Ext. | Est | A Ext. |
| Teoria | Problemes | Laboratori | Altres activitats | Laboratori extern | Estudi | Altres hores fora d'horari fixat |
|
T | P | L | Alt | L Ext. | Est | A Ext. | Total | ||
|---|---|---|---|---|---|---|---|---|---|---|
| 3,0 | 2,0 | 0 | 0 | 0 | 5,0 | 0 | 10,0 | |||
|
Mergesort
Quicksort Karatsuba Strassen Altres exemples |
||||||||||
|
T | P | L | Alt | L Ext. | Est | A Ext. | Total | ||
|---|---|---|---|---|---|---|---|---|---|---|
| 7,0 | 8,0 | 0 | 0 | 0 | 15,0 | 0 | 30,0 | |||
|
Heaps
Heapsort Cues de prioritat esteses Taules de dispersió Arbres binaris de cerca Arbres binaris de cerca balancejats |
||||||||||
|
T | P | L | Alt | L Ext. | Est | A Ext. | Total | ||
|---|---|---|---|---|---|---|---|---|---|---|
| 3,0 | 2,0 | 0 | 0 | 0 | 7,0 | 0 | 12,0 | |||
|
Representacions
Recorreguts Algorismes bàsics |
||||||||||
|
T | P | L | Alt | L Ext. | Est | A Ext. | Total | ||
|---|---|---|---|---|---|---|---|---|---|---|
| 5,0 | 5,0 | 0 | 0 | 0 | 12,0 | 0 | 22,0 | |||
|
Principis dels algorismes voraços
Arbres d'expansió mínims: Kruskal, Prim Camins mínims: Dijkstra Codis prefixes òptims: Huffman Altres exemples |
||||||||||
|
T | P | L | Alt | L Ext. | Est | A Ext. | Total | ||
|---|---|---|---|---|---|---|---|---|---|---|
| 5,0 | 5,0 | 0 | 0 | 0 | 12,0 | 0 | 22,0 | |||
|
Principis dels algorismes de cerca exhaustiva
Marxa enrera (backtracking) i Ramificació i poda (branch and bound) Exemples Nocions de complexitat |
||||||||||
|
T | P | L | Alt | L Ext. | Est | A Ext. | Total | ||
|---|---|---|---|---|---|---|---|---|---|---|
| 5,0 | 5,0 | 0 | 0 | 0 | 12,0 | 0 | 22,0 | |||
|
Principis dels algorismes de programació dinàmica
Principi d'optimalitat Solucions recursives, amb memoització i iteratives Camins mínims: Floyd Distància de edició Altres exemples |
||||||||||
|
T | P | L | Alt | L Ext. | Est | A Ext. | Total | ||
|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 0 | 3,0 | 0 | 3,0 | 0 | 0 | 6,0 | |||
|
Introducció al llenguatge de programació C++, el qual s'utilitza durant tot el curs per descriure els algorismes
|
||||||||||
| Total per tipus | T | P | L | Alt | L Ext. | Est | A Ext. | Total |
| 33,0 | 32,0 | 3,0 | 0 | 3,0 | 73,0 | 0 | 144,0 | |
| Hores addicionals dedicades a l'avaluació | 6,0 | |||||||
| Total hores de treball per l'estudiant | 150,0 | |||||||
El temari s'exposa de forma molt pràtica, a través de la presentació de
molts exemples.
Les classes introdueixen la teoria i els exemples d'aplicació de manera més o menys paral·lela.
Les cinc hores setmanals en promig de l'assignatura es fan en dos blocs de 2 hores cada setmana i un bloc de 2 hores en setmanes alternes.
L'avaluació constarà de dos exàmens parcials (PAR1 i PAR2),
i un exàmen final (FINAL) aquest últim pels alumnes que hagin optat per no fer avaluació
continuada o que hagin tret una nota inferior a 4 en el primer parcial (PAR1). A l'exàmen FINAL entra tota la matèria de l'assignatura.
A més, al llarg del curs
l'alumne pot obtenir entre 0 i 1 punts corresponents a treballs voluntaris proposats pels professors (TV), consistents en la realització de petit exercicis de programació.
El primer exàmen parcial és alliberatori i entren típicament
els temes de l'1 al 4
del temari. Els alumnes que no volen fer avaluació continuada (i per tant no s'han presentat al primer parcial) o que
obtinguin una nota inferior a 4 en aquest
parcial hauràn d'anar a l'exàmen final.
Els que hagin obtingut una nota més gran o igual a 4 en el parcial PAR1 poden anar a l'exàmen final si ho volen, però llavors no se'ls conservarà la nota PAR1.
La nota de l'assignatura es calcula així:
[si PAR1 < 4 ó PAR1 = NP ] NF = min(FINAL + TV, 10)
Aquells que obtinguin una nota superior o igual a 4 en el primer parcial,
podran escollir entre fer el segon parcial o l'exàmen final.
Al segón parcial entren típicament els temes 5 a 7. La seva nota serà, segons que facin el segón parcial o el final:
[si PAR1 >= 4 i PAR2 != NP] NF = min((PAR1 + PAR2) / 2 + TV, 10)
[si PAR1 >= 4 i PAR2 = NP i FINAL != NP] NF = min(FINAL + TV, 10)
L'exàmen parcial PAR2 es fa el mateix dia i hora que l'exàmen FINAL, però és
més curt ja que sols cobreix un part del temari.
Els exàmens consistiran a resoldre problemes que permetin avaluar el grau
d'assoliment dels objectius específics. Com a mínim el 80% de la nota de totes les proves provindrà de problemes basats en els que apareixen a la col·lecció de problemes disponible per als estudiants. Cada quadrimestre hi haurà dues edicions de la col·lecció, una a començaments del quadrimestre (de cara a PAR1) i una altra
cap a la meitat del curs (de cara a PAR2 i FINAL). No hi haurà cap més modificació de la col·lecció al llarg del curs.
Domini de les tècniques de programació imperativa basada en objectes:
- pas de paràmetres,
- classes,
- objectes,
- mètodes,
- punters,
- memòria dinàmica,
- genericitat,
- ús de classes estàndard.
Conèixer bé almenys un llenguatge imperatiu orientat a objectes, preferentment C++.
Recursivitat.
Concepte de TAD.
TAD seqüencials:
- piles,
- cues,
- llistes amb punt d'interès,
- llistes amb iteradors.
Ús i implementació interna dels TAD seqüencials.
TAD arboris:
- arbre binari,
- arbre n-ari,
- arbre general,
- recorreguts.
Ús i implementació interna dels TAD arboris.
Coneixements matemàtics sobre grafs, sumatoris, límits. Matemàtica discreta. Capacitat per seguir i proposar raonaments matemàtics.
Alguns coneixements rudimentaris d'estadística i probabilitats: espai de probabilitat, esdeveniments, funcions de distribució, variable aleatòria, esperança.