Què és un algorisme?

Descobreix com funcionen els algorismes del món

Un algoritme és un conjunt d'instruccions. La definició és realment tan simple. Un algoritme pot ser tan fàcil com donar instruccions com aquesta:

  1. Baixeu pel carrer
  2. Tome la primera a la dreta
  3. Trobeu la segona casa a l'esquerra
  4. Toca a la porta i
  5. Entregueu el paquet.

Però mentre la definició de l'algorisme és senzilla, el significat real i la forma en què afecta les nostres vides poden ser bastant complexes.

Un exemple d'un algorisme

Un exemple comú d'un algoritme que utilitzem en la nostra vida quotidiana és una recepta. Aquest conjunt d'instruccions ens proporciona tots els ingredients que necessitarem i indicacions sobre què fer amb aquests ingredients. Sona fàcil, no?

Però què passa si no sabeu on es manté la tassa de mesurar? Necessitareu un algorisme per trobar-lo. Fins i tot necessiteu un algoritme sobre com utilitzar una tassa de mesurar.

Així, mentre un algoritme és un conjunt d'instruccions, també ha de tenir en compte qui o què va a interpretar aquestes instruccions. Per exemple, si dóna indicacions a un amic que especifica com arribar des de casa fins a la botiga de queviures més proper, el vostre amic només sap com arribar a aquesta botiga si saben on està la vostra casa. No són capaços (encara) de trobar aquesta botiga de queviures en particular, per exemple, casa d'un altre amic.

Així és com un algoritme pot ser simple i complex. I quan parlem en termes d'algoritmes informàtics, comprendre què pot fer una computadora és una part fonamental de la formulació d'algorismes.

Com evolucionen els algorismes d'ordenació

Un dels primers algorismes creats va ser la rutina de classificació de bombolles. El tipus de bombolla és un mètode per classificar números, lletres o paraules, mitjançant un conjunt de dades, comparant cada conjunt de valors un al costat de l'altre i canviant-los quan sigui necessari.

Aquest bucle es repeteix fins que l'algorisme es pot moure a través de tota la llista sense necessitat d'intercanviar res, el que significa que els valors s'ordenen correctament. Aquest tipus d'algoritme es denomina sovint com un algoritme recursiu, ja que es repeteix una i altra vegada fins que finalitza la tasca.

L'algoritme pot semblar tan senzill com:

  1. Vés al primer valor.
  2. Comproveu aquest valor amb el valor següent i canviar les posicions si és necessari
  3. Anar al següent valor i repetir la comparació.
  4. Si estem al final de la llista, torneu a la part superior si s'ha canviat qualsevol valor durant el cicle.

Però el tipus de bombolla no va ser la manera més eficient d'ordenar els valors. A mesura que avançava el temps i els equips es tornaven més capaços de fer tasques complexes amb rapidesa, apareixien nous algoritmes de classificació.

Un d'aquests algorismes escaneja a través de la primera llista i crea una segona llista de valors ordenats. Aquest mètode només fa un únic pas a través de la llista original, i amb cada valor, es passarà a la segona llista fins que trobi el lloc correcte per posar el valor. En general, és més eficient que utilitzar el mètode de classificació de bombolles.

Aquí és on els algoritmes poden tornar-se bojos. O realment interessant, depenent de com ho mireu.

Tot i que el mètode d'ordenació de bombolles es considera un dels mètodes més ineficients d'ordenar els valors de moltes maneres, si la llista original està preseleccionada correctament, el tipus de bombolla pot ser un dels més eficients. Això és degut a que, en aquesta instància, l'algoritme de classificació de bombolla passarà per la llista una sola vegada i determinarà que està ordenat correctament.

Malauradament, no sempre sabem si la nostra llista està preseleccionada, per la qual cosa hem de triar un algoritme que serà el més eficient d'utilitzar de mitjana en una gran quantitat de llistes.

El que aprenem de Sort de bombolla

Algorismes de Facebook i més en la vida quotidiana

Algorismes treballen ajudant els humans cada dia. Quan cerqueu la web, hi ha un algoritme a la feina que intenta trobar els millors resultats de la cerca. Demaneu al vostre telèfon intel·ligent les adreces, i un algoritme decideix la millor ruta que podeu fer. I quan navegueu per Facebook, un algoritme decideix quin dels missatges de Facebook del nostre amic són els més importants per a nosaltres. (Esperem que els nostres amics no descobreixen quin Facebook pensa que ens agrada més!)

Però pensar algorítmicament ens pot ajudar molt més enllà de la nostra vida informàtica. Fins i tot ens pot ajudar a construir un sandvitx millor.

Posem per cas que comencem amb dues llesques de pa, estenent la mostassa en una llesca i la maionesa en una altra llesca. Vaig posar una mica de formatge al pa amb la maionesa, un pernil al capdavant, una mica d'enciam, dues llesques de tomàquet i, després, tapar-la amb aquesta rodanxa amb la mostassa. Un bon entrepà, oi?

Definitivament si ho menjo immediatament. Però si la deixo a la taula durant un temps, aquesta part superior de pa es podria posar a remullar una mica d'aquest tomàquet. És un problema que no preveia gaire, i podria fer entrepans durant anys abans de notar-ho, però una vegada que ho fa, puc començar a pensar en maneres de canviar el meu algorisme per construir un sandvitx millor.

Per exemple, podria desfer-me del tomàquet. Però no vull perdre aquest gust de tomàquet. En canvi, puc posar el tomàquet al sandvitx després del pa i l'enciam. Això permet que l'enciam formi una barrera protectora entre el tomàquet i el pa.

Així és com evoluciona un algorisme. I un algoritme no ha de ser executat per una computadora per ser un algoritme. Un algoritme és un procés, i els processos ens envolten.