Top Banner
Victoria López @victoriademates www.tecnologiaUCM.es Universidad Complutense de Madrid 4a
39
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: G te c sesion4a-bigdatasystemsanalytics

Victoria López

@victoriademates

www.tecnologiaUCM.es

Universidad Complutense de Madrid

4a

Page 2: G te c sesion4a-bigdatasystemsanalytics

2

4a

Page 3: G te c sesion4a-bigdatasystemsanalytics

3

4a

Page 4: G te c sesion4a-bigdatasystemsanalytics

4

Page 5: G te c sesion4a-bigdatasystemsanalytics

5

Page 6: G te c sesion4a-bigdatasystemsanalytics

6

Page 7: G te c sesion4a-bigdatasystemsanalytics

7

Page 8: G te c sesion4a-bigdatasystemsanalytics

8

Page 11: G te c sesion4a-bigdatasystemsanalytics

AlmacenajeDataWarehouse

TransformaciónETL

ConsultaReporting, etc.

Page 14: G te c sesion4a-bigdatasystemsanalytics

14

http://www.tylervigen.com/

Page 15: G te c sesion4a-bigdatasystemsanalytics

15

http://www.tylervigen.com/

Page 16: G te c sesion4a-bigdatasystemsanalytics

16

http://www.tylervigen.com/

Page 17: G te c sesion4a-bigdatasystemsanalytics

17

Page 18: G te c sesion4a-bigdatasystemsanalytics

18

Page 19: G te c sesion4a-bigdatasystemsanalytics

19

Page 20: G te c sesion4a-bigdatasystemsanalytics

20

Page 21: G te c sesion4a-bigdatasystemsanalytics

21

Page 22: G te c sesion4a-bigdatasystemsanalytics

22

Page 23: G te c sesion4a-bigdatasystemsanalytics

23

Page 24: G te c sesion4a-bigdatasystemsanalytics

24

Page 25: G te c sesion4a-bigdatasystemsanalytics

25

Page 26: G te c sesion4a-bigdatasystemsanalytics

26

Page 28: G te c sesion4a-bigdatasystemsanalytics

28

Tony Hoare, Doctor Honoris Causa por la Universidad Complutense de Madrid, 2013

La idea: dividir escogiendo un ‘pivote’, poner los pequeños a un lado y los grandes al

otro lado del pivote

Creado por Tony Hoare en 1961 cuando era solo un estudiante

Page 29: G te c sesion4a-bigdatasystemsanalytics

Caso Base: Si la longitud de la lista es 0 ó 1, entonces ya está ordenada. Caso General:

1. Seleccionar un pivote (el último elemento) y colocarlo en su sitio definitivo de forma que los menores queden antes y los mayores después aunque desordenados.2. Llamar recursivamente con input la sublista anterior y la posterior aplicando el mismo procedimiento3. No hace falta mezclar porque las dos sub-listas ya estarán ordenadas y serán contiguas.

Page 30: G te c sesion4a-bigdatasystemsanalytics

Procedimiento ‘divide’ de Quick-Sort:

6 – 13 – 5 – 1 – 0 – 9 – 15 – 8 – 2 – 7

6 – 13 – 5 – 1 – 0 – 9 – 15 – 8 – 2 – 76 – 13 – 5 – 1 – 0 – 9 – 15 – 8 – 2 - 76 – 13 – 5 – 1 – 0 – 9 – 15 – 2 – 7 – 8

6 – 13 – 5 – 1 – 0 – 9 – 2 – 7 – 8 – 15

6 – 13 – 5 – 1 – 0 – 2 – 7 – 9 – 8 – 15

6 – 13 – 5 – 1 – 0 – 2 – 7 – 9 – 8 – 15

6 – 13 – 5 – 1 – 0 – 2 – 7 – 9 – 8 – 15

6 – 13 – 5 – 1 – 0 – 2 – 7 – 9 – 8 – 15

6 – 5 – 1 – 0 – 2 – 7 – 13 – 9 – 8 – 15

6 – 5 – 1 – 0 – 2 – 7 – 13 – 9 – 8 – 15

6 – 5 – 1 – 0 – 2 – 7 – 13 – 9 – 8 – 15

Completidad de ‘divide’ o(n)Complejidad de Quick-Sorto(nlogn)

Page 31: G te c sesion4a-bigdatasystemsanalytics

Reflexión:

Cómo paralelizar un algoritmo óptimo de ordenación

Diferencias entre Merge-Sort y Quick-Sort

Page 32: G te c sesion4a-bigdatasystemsanalytics

Función factorial

Alternativa iterativa:

Int Factorial (int n)int f=1;{For (i=1; i<=n; i++) {f=f*i}Return f}

--Varias instrucciones--Variables auxiliares--Más código, menos fiable

Alternativa recursiva 1:

Int Factorial (int n){If n=0 return 1Else return n*Factorial(n-1)}

-- Una única instrucción--No existen variables locales--Menos código, más fiable

Alternativa recursiva 2:

Int Factorial (int n, m){If n=0 return mElse return Factorial(n-1, n*m)}

-- Programación Funcional Final--No deja calculos pendientes

Page 33: G te c sesion4a-bigdatasystemsanalytics

33

Page 34: G te c sesion4a-bigdatasystemsanalytics

34

Page 35: G te c sesion4a-bigdatasystemsanalytics

35

Page 36: G te c sesion4a-bigdatasystemsanalytics

36

Page 37: G te c sesion4a-bigdatasystemsanalytics

37

Page 39: G te c sesion4a-bigdatasystemsanalytics

Victoria López

@victoriademates

www.tecnologiaUCM.es

Universidad Complutense de Madrid