Beth yw Algorithm?

Darganfyddwch sut mae algorithmau'n rhedeg y byd

Mae algorithm yn gyfres o gyfarwyddiadau. Mae'r diffiniad mewn gwirionedd yn syml. Gall algorithm fod mor hawdd â rhoi cyfarwyddiadau fel hyn:

  1. Ewch i lawr y stryd
  2. Cymerwch y tro cyntaf i'r dde
  3. Dod o hyd i'r ail dŷ ar y chwith
  4. Cnociwch ar y drws a
  5. Dosbarthwch y pecyn.

Ond er bod y diffiniad o algorithm yn syml, gall yr ystyr gwirioneddol a sut mae'n effeithio ar ein bywydau fod yn eithaf cymhleth.

Enghraifft o Algorithm

Rysáit yw enghraifft gyffredin o algorithm yr ydym yn ei ddefnyddio yn ein bywydau bob dydd. Mae'r set hon o gyfarwyddiadau yn rhoi'r holl gynhwysion y byddwn eu hangen arnom a chyfarwyddiadau ar yr hyn y dylid ei wneud gyda'r cynhwysion hynny. Mae'n swnio'n hawdd, dde?

Ond beth os nad ydych chi'n gwybod ble mae'r cwpan mesur yn cael ei gadw? Byddai angen algorithm arnoch i'w gael. Efallai y bydd hyd yn oed angen algorithm ar sut i ddefnyddio cwpan mesur.

Felly, er bod algorithm yn gyfres o gyfarwyddiadau, mae angen iddo hefyd ystyried pwy neu beth sy'n mynd i ddehongli'r cyfarwyddiadau hynny. Er enghraifft, Os ydych chi'n rhoi cyfarwyddiadau i ffrind sy'n rhoi manylion sut i fynd o'ch tŷ i'r siop groser agosaf, dim ond sut i gyrraedd y siop honno fydd eich ffrind yn gwybod os ydynt yn gwybod ble mae'ch tŷ wedi'i leoli. Nid ydynt yn gallu (hyd yn oed) dod o hyd i'r siop groser honno o ddweud, tŷ ffrind arall.

Dyma sut y gall algorithm fod yn syml a chymhleth. A phan y byddwn yn siarad o ran algorithmau cyfrifiadurol, mae deall beth y gall cyfrifiadur ei wneud yn rhan sylfaenol o ffurfio algorithmau.

Sut Datblygodd Algorithmau Didoli

Un o'r algorithmau cynharaf a grëwyd oedd y drefn trefnu swigen. Mae math swigen yn ddull ar gyfer didoli rhifau, llythyrau neu eiriau trwy fynd trwy set ddata, gan gymharu pob set o werthoedd ochr yn ochr, a'u cyfnewid pan fo angen.

Caiff y ddolen hon ei ailadrodd nes i'r algorithm symud drwy'r rhestr gyfan heb orfod cyfnewid unrhyw beth, sy'n golygu bod y gwerthoedd yn cael eu didoli'n gywir. Cyfeirir at y math hwn o algorithm yn aml fel algorithm adferol gan ei fod yn troi ar ei ben ei hun drosodd nes iddo gwblhau'r dasg.

Gallai'r algorithm edrych mor syml â:

  1. Ewch i'r gwerth cyntaf.
  2. Gwiriwch y gwerth hwnnw yn erbyn y gwerth nesaf a chyfnewid swyddi os oes angen
  3. Ewch i'r gwerth nesaf ac ailadroddwch y gymhariaeth.
  4. Os ydym ar ddiwedd y rhestr, ewch yn ôl i'r brig os cafodd unrhyw werth ei gyfnewid yn ystod y ddolen.

Ond nid oedd y math o swigen yn troi'r ffordd fwyaf effeithlon o ddidoli gwerthoedd. Wrth i'r amser fynd ymlaen a daeth y cyfrifiaduron yn fwy galluog i wneud tasgau cymhleth yn gyflym, daeth algorithmau didoli newydd i ben.

Mae un algorithm o'r fath yn sganio trwy'r rhestr gyntaf ac yn creu ail restr o werthoedd didoli. Mae'r dull hwn yn unig yn gwneud pasyn sengl drwy'r rhestr wreiddiol, a gyda phob gwerth, bydd yn dolen drwy'r ail restr nes ei fod yn canfod y lle cywir i roi'r gwerth. Fel rheol, mae'n fwy effeithlon na defnyddio'r dull trefnu swigen.

Dyma lle gall algorithmau fod yn wallgof iawn. Neu yn ddiddorol iawn, yn dibynnu ar sut rydych chi'n edrych arno.

Er bod y dull trefnu swigen yn cael ei ystyried yn un o'r dulliau mwyaf aneffeithlon o werthoedd didoli mewn sawl ffordd, os yw'r rhestr wreiddiol yn cael ei gadw'n iawn, gall y swigen fod yn un o'r rhai mwyaf effeithlon. Dyna oherwydd, yn yr achos hwnnw, bydd yr algorithm dosbarthu swigen yn mynd trwy'r rhestr un tro ac yn penderfynu ei fod wedi'i didoli'n gywir.

Yn anffodus, nid ydym bob amser yn gwybod a yw ein rhestr wedi'i gadw, felly mae'n rhaid i ni ddewis algorithm fydd y mwyaf effeithlon i'w ddefnyddio ar gyfartaledd ar draws nifer fawr o restrau.

Yr hyn rydym ni'n ei ddysgu o ddethol swigen

Algorithmau Facebook A Mwy o fywyd bob dydd

Mae algorithmau yn y gwaith yn helpu pobl bob dydd. Pan fyddwch chi'n chwilio'r we, mae algorithm wrthi'n ceisio dod o hyd i'r canlyniadau chwilio gorau. Gofynnwch i'ch ffôn smart am gyfarwyddiadau, ac mae algorithm yn penderfynu ar y llwybr gorau i chi ei gymryd. A phan fyddwch chi'n bori Facebook, mae algorithm yn penderfynu pa swyddi o'n cyfeillion Facebook sydd bwysicaf i ni. (Gadewch i ni obeithio nad yw ein ffrindiau yn darganfod pa un Facebook sy'n credu ein bod ni'n hoffi'r mwyaf!)

Ond gall meddwl yn algorithmig ein helpu ni ymhell y tu hwnt i'n bywydau cyfrifiadurol. Gall hyd yn oed ein helpu ni i greu brechdanau gwell.

Gadewch i ni ddweud fy mod yn dechrau gyda dwy sleisen o fara, ymledu mwstard ar un slice a mayonnaise ar slice arall. Rwy'n rhoi slice o gaws ar y bara gyda'r mayonnaise, rhywfaint o ham ar ben hynny, ychydig o letys, dwy sleisen o tomato ac yna ei gapio gyda'r slice hwnnw gyda'r mwstard arno. Brechdan da, dde?

Yn bendant os ydw i'n ei fwyta ar unwaith. Ond os byddaf yn ei adael ar y bwrdd am gyfnod, efallai y bydd y slice uchaf o fara yn cael soggy rhag tynnu rhywfaint o'r tomato hwnnw. Mae'n broblem nad oeddwn yn ei ragweld, ac fe allaf wneud brechdanau am flynyddoedd cyn sylwi, ond unwaith y gwnaf, gallaf ddechrau meddwl am ffyrdd o newid fy algorithm er mwyn adeiladu brechdan gwell.

Er enghraifft, gallaf gael gwared ar y tomato. Ond dydw i ddim eisiau colli'r blas tomato hwnnw. Felly, yn lle hynny, gallaf roi'r tomato ar y brechdan ar ôl y bara a'r letys. Mae hyn yn caniatáu i'r letys ffurfio rhwystr amddiffynnol rhwng y tomato a'r bara.

Dyma sut mae algorithm yn esblygu. Ac nid oes rhaid i algorithm gael ei redeg gan gyfrifiadur i fod yn algorithm. Mae algorithm yn broses, ac mae prosesau o gwmpas ni.