Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Què és un algorisme, Apuntes de Sistemas Operativos

Asignatura: Sistemes operatius, Profesor: Xavier Jarque Ribera, Carrera: Enginyeria Informàtica, Universidad: UB

Tipo: Apuntes

2012/2013

Subido el 11/10/2013

pepeman123
pepeman123 🇪🇸

3.5

(8)

6 documentos

1 / 41

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Grau d'Enginyeria Informàtica
Facultat de Matemàtiques
Turing Machine by Tom Dunne
American Scientist, March-April 2002
Algorísmica I 2 | Pàgina 1
Algorísmica
Què és un algorisme?
Jordi Vitrià
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29

Vista previa parcial del texto

¡Descarga Què és un algorisme y más Apuntes en PDF de Sistemas Operativos solo en Docsity!

Grau d'Enginyeria InformàticaFacultat de Matemàtiques^ Turing Machine by Tom DunneAmerican Scientist, March-April 2002 Algorísmica Algorísmica I 2 | Pàgina 1

Què és un algorisme?^ Jordi Vitrià

Què és algorisme?Un^ algorisme^ és^ una seqüència finita, no ambigua i explícita,d’instruccions per a resoldre un problema.

( Wikipedia ) Definició II: Un algorisme és qualsevol procediment computacionalque pren un (o una sèrie) de valors com a entrada (

input ) i genera algun^ valor^ (o^ conjunt^ de

valors)^ com^ a^ sortida^ ( output

). Algorísmica I 2 | Pàgina 2 algun^ valor^ (o^ conjunt^ de

valors)^ com^ a^ sortida^ ( output

). Els algorismes són les^ idees^ Els algorismes^ que hi ha darrera delsprogrames.

no depenen del^ Els algorismes interessants són els llenguatge en que estan escritsque resolen^ problemes generals però si que depenen de larepresentació de les dades.

. Elsproblemes específics es resolenreduint-los a problemes generals!

Exemple computacional (el problema de l’ordenació) Input: Una seqüència de nombres

<a..a>^1 N Output: La permutació (reordenació)

<a’..a’>^ de la^1 N seqüència d’entrada de manera que

a’< a’< … <^ a’^1 2 N Algorísmica I 2 | Pàgina 4 seqüència d’entrada de manera que

a’< a’< … <^ a’^1 2 N Observació: Volem una solució correcta i eficient!^ 3,6,3,6,8,5,7,^

3,3,5,6,6,7,8,

Correcció i Eficiència Algorísmica Un algorisme es^ correcte

si podem^ demostrar

que retorna la sortida desitjada per a qualsevol entradalegal^ (per^ el^ problema

de^ l’ordenació,^

això^ ha d’incloure entrades ja ordenades o entrades amb elements^ repetits!).

Algorísmica I 2 | Pàgina 5 elements^ repetits!). És^ eficient^ si es fa amb el

mínim nombre de recursos ( temps, memòria ) possible. Això és fàcil per alguns algorismes, difícil per la majoria i fins itot impossible per alguns.

Exemple^ TSP: TravelingSalesman Problem.Aquest cartellcorrespon al concurspromogut per Procter &Gamble l’any 1962 perrecorrer 33 ciutats delsEEUU.

Algorísmica I 2 | Pàgina 7

Exemple (i) Suposem que hem de passar per cada un d’aquestspunts i volem minimitzar la distància recorreguda.

Algorísmica I 2 | Pàgina 8

Exemple (iii) És evident que no és correcte!

Algorísmica I 2 | Pàgina 10

Exemple (iv) Solució II: Considerem tots el possibles passos parcials i anemafegint repetidament el més petit sempre i quan no generi un cicleo una doble sortida per un punt. d= Per^ i=1^ fins a^ N-1^ Per cada parella de punts

(x,y)^ no connectats ∞ Per cada parella de punts^ (x,y)^ no connectats^ Si^ dist(x,y) <= d^ llavors^ x=x, y=y,mm d= dist(x,y) Connecta^ x i^ y amb un camí m^ m^^ Algorísmica I 2 | Pàgina 11 Retorna la seqüència Tampoc és correcte!

Exemple^ Applegate, Bixby,Chvátal, Cook &Helsgaun^ van trobar al2004 la solució òptimaper recorrer 24,978ciutats de Suècia.

Algorísmica I 2 | Pàgina 13

Exemple^ Solució aproximada per100.000 punts querepresenten la Mona Lisa.

Algorísmica I 2 | Pàgina 14

Suposem que hem instal·lat el llenguatge Python al nostre ordinador:

16

Un programa en Python Si cridem a l’interpret de Python apareix:

Algorísmica I 2 | Pàgina 17 i ja podem començar a donar ordres...

instrucció/ statement

Un programa en Python Les funcions poden tenir^ paràmetres

(que van entre els parèntesis): Algorísmica I 2 | Pàgina 19 Que quan es criden han de prendre un

valor:^ Cridem la funció ambel paràmetre amb valor“John”

Un programa en Python Si volem cridar la funció en el futur, l’hem de guardar. Podem crear un programaescrivint les funcions en un fitxer apart, que anomenarem

mòdul^ o^ script , que guardarem al disc.Escrivim i guardem al disc amb el nom

Podem crear-los amb uneditor de text o amb unentorn de programació. chaos.py: L'extensió .py indica queés un mòdul Python. Algorísmica I 2 | Pàgina 20

Els programes essolen posar enuna funcióanomenada main. Comentarisque noformen partdelprograma