7. diel - Triedenie a prehľadávanie polí
V predchádzajúcej lekcii, Rozdelenie a spojenie polí, sme si ukázali, ako zlučovať a rozdeľovať polia.
V nasledujúcom tutoriále knižnice NumPy v Pythone sa pozrieme na to, ako sa pole dá triediť, napr. podľa abecedného poradia, a ako sa v poliach vyhľadáva. Do detailov algoritmov, ktoré vyhľadávanie a triedenie vykonávajú, sa príliš púšťať nebudeme. Stačí nám vedieť, že NumPy používa tie najrýchlejšie, ktoré existujú Radšej sa zameriame na funkcie, ktoré nám k tomu NumPy ponúkajú.
Triedenie polí - funkcia
sort()
Začneme triedením polí. Funkcia sort()
má veľmi jednoduchú
syntax a veľmi široké uplatnenie. Hodí sa, ak máme napríklad zoznam
zvierat:D a chceme ich zotriediť podľa abecedy. Alebo zoznam súm v
účtovníctve a chceme ich mať od najmenšej po najväčšiu.
Funkcia sort()
používa v závislosti od typu premenných v
poli algoritmy Quick Sort, Merge Sort, či Heap Sort. Tieto algoritmy patria do
najrýchlejšej triedy triediacich algoritmov (pre zaujímavosť, je to trieda
Θ(n×log(n))
, kde n
je veľkosť poľa). Pokiaľ by
sme chceli explicitne zadať, akým algoritmom chceme triediť, použijeme vo
funkcii sort()
argument kind=
. Tu uvedieme
špecifikáciu ako 'quicksort', 'mergesort'
atď.
...koniec náhľadu článku...
Pokračuj ďalej
Minul si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiové sekcie.
Kúpiť tento kurz
Pred kúpou tohto článku je potrebné kúpiť predchádzajúci diel
Obsah článku spadá pod licenciu Premium, kúpou článku súhlasíš so zmluvnými podmienkami.
- Neobmedzený a trvalý prístup k jednotlivým lekciím.
- Kvalitné znalosti v oblasti IT.
- Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.
Popis článku
Požadovaný článok má nasledujúci obsah:
V nasledujúcom tutoriále NumPy v Pythone si vysvetlíme použitie funkcií sort(), where() a searchsorted() pre triedenie a prehľadávanie polí.
Kredity získaš, keď podporíš našu sieť. To môžeš urobiť buď zaslaním symbolickej sumy na podporu prevádzky alebo pridaním obsahu na sieť.