Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

Datastruktur & Algoritmik1 Datastruktur & Algoritmik 3 REKURRENSER.

Liknende presentasjoner


Presentasjon om: "Datastruktur & Algoritmik1 Datastruktur & Algoritmik 3 REKURRENSER."— Utskrift av presentasjonen:

1 Datastruktur & Algoritmik1 Datastruktur & Algoritmik 3 REKURRENSER

2 Datastruktur & Algoritmik2 Merge Sort Merge-Sort(A,p,r) (* Sortering A[p],A[p+1],..,A[r] *) if p

3 Datastruktur & Algoritmik3 Rekurrens Ligning Lineær, homogen af orden k Divide-and-conquer a’er og b er konstanter Entydig løsning! Vi skal se på generelle metoder til at bestemme løsning til rekurrens ligninger (og anvende dem) Vi skal se på generelle metoder til at bestemme løsning til rekurrens ligninger (og anvende dem)

4 Datastruktur & Algoritmik4 Metoder Substitution (gæt og bevis) Iteration (manipulér sum) Master metoder (slå op)

5 Datastruktur & Algoritmik5 Rekursive Algoritmer for Søgning A LinSearch(v,A,p,r) (* Søg efter v i A[p]...A[r]*) if p

6 Datastruktur & Algoritmik6 Binære Søgning i sorteret liste A pr BinSearch(v,A,p,r) (* Søg efter v i A[p]...A[r]*) if p

7 Datastruktur & Algoritmik7 Iteration Expandér rekurrens og summér Rekurrenstræ

8 Datastruktur & Algoritmik8 Iteration Expandér rekurrens og summér

9 Datastruktur & Algoritmik9 1ste Master Metode Theorem Rosen s 328

10 Datastruktur & Algoritmik10 2. Master Metode Theorem Rosen s 330

11 Datastruktur & Algoritmik11 Heltalsoperationer De gamle skolemetoder Datastruktur a1 a2 a an Mest betydende ciffer Cifre fra 0,1,2,3,4, 5,6,7,8,9 Ex.: Addition = Algoritmen a1 a2 a3.... an + b1 b2 b3.... bn = c0 c1 c2 c3.... cn 0m3m2m1 m0 mn:=0; for j:=n downto 1 do cj := (aj+bj+mj) mod 10 mj-1:=(aj+bj+mj) div 10 c0:=m0 mn:=0; for j:=n downto 1 do cj := (aj+bj+mj) mod 10 mj-1:=(aj+bj+mj) div 10 c0:=m0 O(n)

12 Datastruktur & Algoritmik12 Multiplikation Den gamle skolemetode Multiplikation med 1 ciffer * 5 = Algoritme a1 a2 a3.... an * b = c0 c1 c2.... cn mn:=0; for j:=n downto 1 do cj := (aj*b+mj) mod 10 mj-1:=(aj*b+mj) div 10 c0:=m0 mn:=0; for j:=n downto 1 do cj := (aj*b+mj) mod 10 mj-1:=(aj*b+mj) div 10 c0:=m0 m0m1 m2 m3.. mn Generelt 147 * n mulit med 1 ciffer efterfulgt af n additioner O(n 2 )

13 Datastruktur & Algoritmik13 Hurtig Multiplication O(n 2 ) til O(n 1.6 ) 53 * * ab * cd b*d a*d b*c a*c xxxxxxxx ab * cd b*d a*d+b*c a*c xxxxxxxxxx a*d+b*c =(a+b)*(c+d)-a*c-b*d kendes Generelt Mult af n-cifrede tal= 3 mult af (n/2)-cifrede tal samt addition af n cifrede tal

14 Datastruktur & Algoritmik14 3. Master Metode Theorem CLR side 62


Laste ned ppt "Datastruktur & Algoritmik1 Datastruktur & Algoritmik 3 REKURRENSER."

Liknende presentasjoner


Annonser fra Google