TelefoniaPrugrammazione

Quicksort cum'è un mètudu di prugrammazione

In 1960, K. A. Hoar sviluppatu un mètudu pi la rapida, tri di infurmazioni, addivintau la cchiù famusa. Oghje hè anchiamènti usatu a prugrammazione, comu si hà assai di proprietà di pusitivu: si pò esse à prò di casi generale, ci hè una piccula dimensione in u ricordu applicàrisi, compatible cù sfarenti tippi di listi, è facile à azzione. Ma ci sò scorda chì hà Quicksort: cù u travagliu u dirittu assai di sbagli, è ghjè assai nstabbili.

Tuttavia, ci hè a versione più studiatu. Dopu à a prima c'est pagamentu, tanti fà u so n'àuta dinzitati studiu. grande basi fù custrutta in u dumanni teorichi di truvarisi u tempu passatu à u travagliu, chì hè underpinned da testimunianze impirica. Ci eranu pruposte vera à migliurà u algutitimu fundamentali è cresce vitezza.

Quicksort hè assai cumuna, ùn si pò trova in ogni locu. In u so basi lu mètudu hè realizatu TList.Sort, presente in tutti i versioni (francu 1) Delfi, u funzione biblioteca di u tempu si pigliò à compie, qsort in C ++.

U principiu di basi di quessu pò poi comu na "dividi e nci". Si faci rumpi la lista in dui gruppi, è sò urdinati di tutti li parti da stissa. Sighit chì più primura deve esse pagatu à u prucessu di siparazzioni, duranti cui si trova l 'cchìstu: hè dicisa da un elementu basi è hè pocu rearranged tilatica so lista. Custruitu à a manca di un gruppu di candidati, i valori di u quali hè menu cà tutti l 'autri reguli di trasferimentu. Si gira fora chì l 'elementu principale in u listinu sbuchjera hè in u so locu succissuri. U prossimu tappa - una sfida funzioni, tri Recursive di ntrammi li lati di u elementi parente à a basa. It finisci lu prucessu di travaglia solu s'è u listinu cuntene solu unu elementu, chì hè à esse sbuchjera. Cusì, in ordine à ammaistrà una funzione di prugrammazione comu na taliatura sorta, hè nicissariu di cunnosce u travagliu di alguritmi-livellu prus: a) a scelta di i membri basi; b) una lista di i francese permutation più vere à pruducia dui gruppi cù valori nica e cchiù granni.

Familiarize cun prima principii. Quannu attruvau lu membru basi, avissi a manera ideali esse sceltu da a lista di i media. Allora u la ruttura hè divisu in duie metà uguali. Just di calculari lu valuri di media in a lista hè assai difficiule, cusì ancu i tri manda bypasses stu cantu calculu. Ma a scelta di l'elementu basi cu lu valuri massimu, o minimu - dinù ùn la funziunalità megliu. In casu di tali vulintà di unu crèa listi viotu sarà mossa, è lu secunnu piena. Faci lu fa cunchiùdiri ca comu lu membru basi avissi a èssiri elettu unu chì hè vicinu à i media, ma u pesu è u minimu.

Una volta una scelta hè dicisa, vi ponu viaghjà à i algutitimu decomposition. Sta cusì-chjamatu i cicli nternu prestu sorta. Tuttu hè custruitu nant'à dui indexes Access Rapid: prima vai nantu à l 'elementi da manca à dritta, a siconda, à u cuntrariu, da dritta à manca. Cumincia esicuzzioni operatu dritta: l 'accogliu hè u listinu è parauni tutti i valori di i principali. U routes hè cumpleta quandu l 'elementu hè menu cà, o paru à l' baseline. Chì hè, ci hè una regina è decreases i valori di u accogliu. Nantu à a manu manca quandu u travagliu hè finitu più cà, o uguali valore. Quì, lu valuri di paragunà aumenta.

At sta tappa di algutitimu spartutu chì c'hè quicksort, pò truvà dui situazzioni. A prima hè chì l 'accogliu u manca hè menu cà dritta. Stu indica un errore, tandu ci sò elementi di lu quali fù dettu in la lista sò in l 'ordine è sbagghiatu. Oïl - cambià i so lochi. U secondu fattu hè quandu tutti dui di i Colonna hè uguali à o 'ncruciati. Stu ìnnica na siparazzioni riescita di a lista, chi è, u travagliu hè avà cumpleta.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 co.atomiyme.com. Theme powered by WordPress.