algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

17
Vaje APS, Vaje APS, © UČ, JM UČ, JM Algoritmi in podatkovne strukture Algoritmi in podatkovne strukture

Upload: others

Post on 09-Nov-2021

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Algoritmi inpodatkovne strukture

Algoritmi inpodatkovne strukture

Page 2: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Predstavitev polinomovPredstavitev polinomov

● Koeficientna predstavitev.

Page 3: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Predstavitev polinomovPredstavitev polinomov

● Koeficientna predstavitev.

● Vrednostna predstavitev.● Nabor točk: ● Vrednosti v točkah:

Page 4: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Prehod med predstavitvamiPrehod med predstavitvami

● Iz koeficientne v vrednostno.● Izračun vrednosti polinoma v točki – O(n).

– Uporaba Hornerjevega algoritma.● Izračun v n točkah – O(n2).

● Iz vrednostne v koeficientno.● Interpolacija s polinomom skozi n točk.

Page 5: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Množenje polinomovMnoženje polinomov

● Množenje polinomov oz. konvolucija vektorjev.● Koeficientna predstavitev – O(n2).● Vrednostna predstavitev – O(n).

● Kako to izkoristiti?● Polinome v koeficientni predstavitvi

želimo hitreje množiti preko množenjav vrednostni predstavitvi.

Page 6: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Množenje polinomovMnoženje polinomov

Koeficientna predstavitev

Vrednostnapredstavitev

Produkt polinomov

Produkt po komponentah

Page 7: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Množenje polinomovMnoženje polinomov

Koeficientna predstavitev

Vrednostnapredstavitev

Produkt polinomov

Produkt po komponentah

Page 8: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Množenje polinomovMnoženje polinomov

Koeficientna predstavitev

Vrednostnapredstavitev

Produkt polinomov

Produkt po komponentah

FFT

Page 9: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Primitivni koren enotePrimitivni koren enote

● Komutativni kolobar (npr. kompleksna števila).● n-ti primitivni koren enote:

koren enote

primitivni koren

Page 10: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Primer: kompleksna številaPrimer: kompleksna števila

● n-ti primitivni koren:

● Eulerjeva formula:

Page 11: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Primer: kompleksna številaPrimer: kompleksna števila

● Dokaz.

Page 12: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Primer: kompleksna številaPrimer: kompleksna števila

n=4 n=8

Page 13: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Primer: obseg ZPrimer: obseg Zpp

Page 14: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Diskretna Fourierjeva transformacijaDiskretna Fourierjeva transformacija

● DFT je transformacija polinoma (oz. vektorja):● iz koeficientne predstavitve

v vrednostno predstavitev v točkah

Vrednostna predstavitev Koeficientna predstavitev

Page 15: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

DFT DFT

● Matrika F.

Page 16: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Inverzni DFTInverzni DFT

● Inverzni DFT je skoraj enak DFT.

je tudi n-ti PKE.Množenje z 1/n.

Page 17: Algoritmi in podatkovne strukture - ucilnica.fri.uni-lj.si

Vaje APS, Vaje APS, ©© UČ, JM UČ, JM

Časovna zahtevnostČasovna zahtevnost

● Računanje DFT z matriko.● Časovna zahtevnost O(n^2).● Množenja polinomov na ta način ne pohitrimo (celo

poslabšamo ga).

● Zaradi lepih lastnosti PKE,je mogoče izvajanje DFT bistveno pohitriti.● Algoritem FFT – ● O tem več naslednjič …