Tekstalgoritmer. Søk etter delstrenger i array
|
|
- Ine Samuelsen
- 5 år siden
- Visninger:
Transkript
1
2 Tekstalgoritmer Søk etter delstrenger i array
3 Definisjoner Et alfabet er en endelig mengde tegn A = {a 1, a 2,, a k }. En (tekst)streng S = S [0: n -1] med lengde n er en sekvens av tegn fra A. Vi vil i programmene representer strengen S som en array S[0:n -1].
4 Definisjoner Et alfabet er en endelig mengde tegn A = {a 1, a 2,, a k }. En (tekst)streng S = S [0: n -1] med lengde n er en sekvens av tegn fra A. Vi vil i programmene representer strengen S som en array S[0:n -1]. Søkeproblemet: Gitt to strenger, T (= Tekst) and P (= Pattern) mønster, hvor P er kortere enn T (vanligvis mye kortere). Finn ut om P finnes som en (sammenhengende) substreng i T, og hvis ja, hvor i T n -1 m-1 T [0:n -1] (Tekst) P [0:m -1] (Mønster)
5 Definisjoner Et alfabet er en endelig mengde tegn A = {a 1, a 2,, a k }. En (tekst)streng S = S [0: n -1] med lengde n er en sekvens av tegn fra A. Vi vil i programmene representer strengen S som en array S[0:n -1]. Søkeproblemet: Gitt to strenger, T (= Tekst) and P (= Pattern) mønster, hvor P er kortere enn T (vanligvis mye kortere). Finn ut om P finnes som en (sammenhengende) substreng i T, og hvis ja, hvor i T n -1 H [0:n -1] (Høystakk) m-1 N [0:m -1] (Nål)
6 Definisjoner Let P be a string of size m A substring P[i.. j] of P is the subsequene of P onsisting of the haraters with ranks between i and j A prefix of P is a substring of the type P[0.. i] A suffix of P is a substring of the type P[i..m - 1] i j m -1 P [0:m -1]
7 Definisjoner Let P be a string of size m A substring P[i.. j] of P is the subsequene of P onsisting of the haraters with ranks between i and j A prefix of P is a substring of the type P[0.. i] A suffix of P is a substring of the type P[i..m - 1] i m -1 P [0:m -1]
8 Definisjoner Let P be a string of size m A substring P[i.. j] of P is the subsequene of P onsisting of the haraters with ranks between i and j A prefix of P is a substring of the type P[0.. i] A suffix of P is a substring of the type P[i..m - 1] i m -1 P [0:m -1]
9
10 Examples of strings: Python program HTML doument DNA sequene Digitized image import math print("enter the oeffiients of the form ax^3 + bx^2 + x + d") lst=[] for i in range(0,4): a=int(input("enter oeffiient:")) lst.append(a) x=int(input("enter the value of x:")) sum1=0 j=3 for i in range(0,3): while(j>0): sum1=sum1+(lst[i]*math.pow(x,j)) break j=j-1 sum1=sum1+lst[3] print("the value of the polynomial is:",sum1)
11 Examples of strings: Python program HTML doument DNA sequene Digitized image <!DOCTYPE html> <html lang="no"> <head> <meta hwp-equiv="x-ua-compa\ble" ontent="ie=edge" /> <meta id="viewport" name="viewport" ontent="width=devie-width, ini\al-sale=1" /> <meta harset="u_-8" > <meta name="format-dete\on" ontent="telephone=no"> <meta name="generator" ontent="vortex" /> <\tle>obligatoriske innleveringer høsten IN Høst Universitetet i Oslo</\tle> <meta property="og:\tle" ontent="obligatoriske innleveringer høsten IN Høst Universitetet i Oslo" /> <meta name="twiwer:ard" ontent="summary" /> <meta name="twiwer:site" ontent="@unioslo" /> <meta name="twiwer:\tle" ontent="obligatoriske innleveringer høsten 2018" /> <meta name="twiwer:desrip\on" ontent="les denne saken på UiOs newsider." /> <meta name="twiwer:url" ontent="hwps:// /> <meta property="og:url" ontent="hwps:// /> <meta property="og:type" ontent="website" /> <link rel="shortut ion" href="/vrtx/deora\ng/resoures/dist/images/favion.io" > <link rel="apple-touh-ion-preomposed" href="/vrtx/deora\ng/resoures/dist/images/apple-touhion.png" > <sript><!-- if (/ipad Android 3/i.test(navigator.userAgent)) { var tabletvp = doument.getelementbyid('viewport'); tabletvp.setawribute("ontent", "width=1020, user-salable=yes"); } if (/googlebot/i.test(navigator.useragent)) { doument.addeventlistener("domcontentloaded", fun\on(event) { var ss = '@media only sreen and (max-width: 16m) and (orienta\on : portrait),' + ' var head = doument.getelementsbytagname('head')[0]; var s = doument.reateelement('style'); s.setawribute('type', 'text/ss'); if (s.stylesheet) { s.stylesheet.sstext = ss; } else { s.appendchild(doument.reatetextnode(ss)); } head.appendchild(s); }); } only sreen and (max-width: 19m) and (orienta\on : landsape) { * { max-width: 420px; } }';
12 Examples of strings: Python program HTML doument DNA sequene Digitized image
13 Examples of strings: Python program HTML doument DNA sequene Digitized image
14 Anvendelser GREP(1) User Commands GREP(1) NAME top grep, egrep, fgrep - print lines that math pawerns SYNOPSIS top grep [OPTION...] PATTERNS [FILE...] grep [OPTION...] -e PATTERNS... [FILE...] grep [OPTION...] -f PATTERN_FILE... [FILE...] DESCRIPTION top grep searhes for PATTERNS in eah FILE. PATTERNS is one or pawerns separated by newline haraters, and grep prints eah line that mathes a pawern. A FILE of - stands for standard input. If no FILE is given, reursive searhes examine the working diretory, and nonreursive searhes read standard input. In addi\on, the variant programs egrep and fgrep are the same as grep -E and grep -F, respe\vely. These variants are depreated, but are provided for bakward ompa\bility.
15 Anvendelser
16 Anvendelser
17 Anvendelser
18 0 1 2 n -1 T [0:n -1] P [0:m -1]
19 Vindu n -1 T [0:n -1] P [0:m -1] Hvordan vil du gjøre dette? Beskriv en algoritme!
20 Vindu n -1 T [0:n -1] P [0:m -1] Sammenlign Vinduet med P: Hvis mismath, flytt vinduet ett hakk forover
21 0 1 2 n -1 T [0:n -1] P [0:m -1] Sammenlign Vinduet med P: Hvis mismath, flytt vinduet ett hakk forover
22 0 1 2 n -1 T [0:n -1] P [0:m -1] Sammenlign Vinduet med P: Hvis mismath, flytt vinduet ett hakk forover
23 0 1 2 n-m n -1 T [0:n -1] P [0:m -1] Sammenlign Vinduet med P: Hvis mismath, P finnes ikke i T (som substreng)
24 Sammenligner fra 0 mot n Vindu n-m n -1 T [0:n -1] P [0:m -1] for i 0 to n - m do if T [i : i+m-1] = P then // er vindu = P? return(i) endif endfor return(-1)
25 Den naive algoritmen for strengsammenligning Vindu Sammenligner fra 0 mot n n -1 T [0:n -1] P [0:m -1]
26 Den naive algoritmen for strengsammenligning Vindu Sammenligner fra 0 mot n n -1 T [0:n -1] P [0:m -1] Brute fore (rå kraft) brukes ofte synonymt med unødvendig tungvindt dårlig, men korrekt treg enkel lite gjennomtenkt nødløsning lite effektiv
27 Den naive algoritmen for strengsammenligning Vindu Sammenligner fra 0 mot n n -1 T [0:n -1] P [0:m -1] Brute fore (rå kraft) brukes ofte synonymt med unødvendig tungvindt dårlig, men korrekt treg enkel lite gjennomtenkt nødløsning lite effektiv men er noen ganger nødvendig brute fore løsninger er typisk den første ideen vi får i IN2010 søker vi som oftest mer effektive algoritmer
28 Den naive algoritmen for strengsammenligning Vindu Sammenligner fra 0 mot n n -1 T [0:n -1] The brute-fore pattern mathing algorithm ompares the pattern P with the text T for eah possible shift of P relative to T, until either a math is found, or all plaements of the pattern have been tried Brute-fore pattern mathing runs in time O(nm) Example of worst ase: T = aaa ah P = aaah may our in images and DNA sequenes unlikely in English text P [0:m -1]
29 Den naive algoritmen for strengsammenligning Vindu Sammenligner fra 0 mot n n -1 T [0:n -1] Algorithm BruteForeMath(T, P) Input text T of size n and pattern P of size m Output starting index of a substring of T equal to P or -1 if no suh substring exists for i 0 to n - m { test shift i of the pattern } j 0 while j < m T[i + j] = P[j] j j + 1 if j = m return i {math at i} else break while loop {mismath} return -1 {no math anywhere} P [0:m -1]
30 Boyer-Moore a p a t t e r n m a t h i n g a l g o
31 Boyer-Moore a p a t t e r n m a t h i n g a l g o
32 Boyer-Moore a p a t t e r n m a t h i n g a l g o
33 Boyer-Moore a p a t t e r n m a t h i n g a l g o
34 Boyer-Moore a p a t t e r n m a t h i n g a l g o
35 Boyer-Moore a p a t t e r n m a t h i n g a l g o
36 Boyer-Moore a p a t t e r n m a t h i n g a l g o
37 Boyer-Moore a p a t t e r n m a t h i n g a l g o
38 Boyer-Moore a p a t t e r n m a t h i n g a l g o
39 Boyer-Moore a p a t t e r n m a t h i n g a l g o
40 Boyer-Moore a p a t t e r n m a t h i n g a l g o
41 Boyer-Moore a p a t t e r n m a t h i n g a l g o
42 Boyer-Moore a p a t t e r n m a t h i n g a l g o
43 Boyer-Moore a p a t t e r n m a t h i n g a l g o
44 Boyer-Moore a p a t t e r n m a t h i n g a l g o
45 Boyer-Moore a p a t t e r n m a t h i n g a l g o
46 Boyer-Moore a p a t t e r n m a t h i n g a l g o
47 Boyer-Moore a p a t t e r n m a t h i n g a l g o
48 Boyer-Moore a p a t t e r n m a t h i n g a l g o
49 Boyer-Moore a p a t t e r n m a t h i n g a l g o
50 Boyer-Moore a p a t t e r n m a t h i n g a l g o
51 Boyer-Moore a p a t t e r n m a t h i n g a l g o
52 Boyer-Moore a p a t t e r n m a t h i n g a l g o
53 Boyer-Moore a p a t t e r n m a t h i n g a l g o
54 Boyer-Moore a p a t t e r n m a t h i n g a l g o
55 Boyer-Moore a p a t t e r n m a t h i n g a l g o
56 Boyer-Moore a p a t t e r n m a t h i n g a l g o
57 Boyer-Moore a p a t t e r n m a t h i n g a l g o
58 Boyer-Moore a p a t t e r n m a t h i n g a l g o
59 Boyer-Moore a p a t t e r n m a t h i n g a l g o
60 Boyer-Moore a p a t t e r n m a t h i n g a l g o
61 Boyer-Moore a p a t t e r n m a t h i n g a l g o
62 Boyer-Moore a p a t t e r n m a t h i n g a l g o
63 Boyer-Moore a p a t t e r n m a t h i n g a l g o
64 Boyer-Moore a p a t t e r n m a t h i n g a l g o Hvilke forberedelser må vi gjøre for å kunne bestemme hvor langt vi skal rykke fram når det er en mismath?
65 Boyer-Moore a p a t t e r n m a t h i n g a l g o Charater-jump heuristi: When a mismath ours at T[i] = If P ontains, shift P to align the last ourrene of in P with T[i] Else, shift P to align P[0] with T[i + 1]
66 Boyer-Moore a p a t t e r n m a t h i n g a l g o Charater-jump heuristi: When a mismath ours at T[i] = If P ontains, shift P to align the last ourrene of in P with T[i] Else, shift P to align P[0] with T[i + 1] Vi må for alle tegn i alfabetet vite: Finnes i mønsteret P? Hvis ja, må vi vite hvor siste forekomst er.
67 Boyer-Moore a p a t t e r n m a t h i n g a l g o d e f g h i j k last() Vi må for alle tegn i alfabetet vite: Finnes i mønsteret P? Hvis ja, må vi vite hvor siste forekomst er.
68 Boyer-Moore Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math } Case 1: j 1 + l Case 2: 1 + l j a i b a j l m j.... b a j a a.. i b. l j m (1 + l). a.. b. 1 + l
69 Analyse Kjøretiden for Boyer-Moores algoritme er O(nm + s) Worst ase-eksempel: T = aaa a P = baaa Kan oppstå i bilder og DNAsekvenser men er usannsynlig i norsk/engelsk tekst Algoritmen er signifikant raskere enn brute-fore på norsk/engelsk tekst a a a a a a a a a b a a a a a 12 b a a a a a b a a a a a b a a a a a
70 Boyer-Moore a a a a a a b b a L() Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
71 Boyer-Moore i = 5 a a a a a a b b a L() j = 5 l L[T[i]] i i + m min(j, 1 + l) j m - 1 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
72 Boyer-Moore i = 5 a a a a a a b b a L() j = 5 l L[T[5]] i i + m min(j, 1 + l) j m - 1 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
73 Boyer-Moore i = 5 a a a a a a b b a L() j = 5 l L[a] i i + m min(j, 1 + l) j m - 1 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
74 Boyer-Moore i = 5 a a a a a a b b a L() j = 5 l 4 i i + m min(j, 1 + l) j m - 1 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
75 Boyer-Moore i = 5 a a a a a a b b a L() j = 5 l 4 i min(5, 1 + 4) j m - 1 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
76 Boyer-Moore i = 5 a a a a a a b b a L() j = 5 l 4 i min(5, 5 ) j m - 1 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
77 Boyer-Moore i = 5 a a a a a a b b a l 4 i j m - 1 L() j = 5 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
78 Boyer-Moore i = 5 a a a a a a b b a l 4 i 6 j m - 1 L() j = 5 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
79 Boyer-Moore i = 5 a a a a a a b b l 4 i 6 j 5 a L() j = 5 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
80 Boyer-Moore i = 6 a a a a a a b b l 4 i 6 j 5 a L() j = 5 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
81 Boyer-Moore i = 6 a a a a a a b b a L() j = 5 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
82 Boyer-Moore i = 4 a a a a a a b b a j = 3 L() Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
83 Boyer-Moore i = 4 a a a a a a b b a j = 3 L() Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
84 Boyer-Moore i = 7 a a a a a a b b a L() j = 5 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
85 Boyer-Moore i = 7 a a a a a a b b a L() j = 5 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
86 Boyer-Moore i = 8 a a a a a a b b L() a j = 5 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
87 Boyer-Moore i = 8 a a a a a a b b L() a j = 5 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
88 Boyer-Moore i = 8 a a a a a a b b L() a j = 5 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
89 Boyer-Moore i = 8 a a a a a a b b L() a j = 5 Algorithm BoyerMooreMath(T, P, Σ) L lastourenefuntion(p, Σ ) i m - 1 j m - 1 repeat if T[i] = P[j] if j = 0 return i { math at i } else i i - 1 j j - 1 else { harater-jump } l L[T[i]] i i + m min(j, 1 + l) j m - 1 until i > n - 1 return -1 { no math }
90 Boyer-Moore i = 10 a a a a a a b b a j = 5
91 Boyer-Moore i = 10 a a a a a a b b a j = 5
92 Boyer-Moore a a a a a a b b a
93 Boyer-Moore i = 8 a a a a a a b b a j = 2 L() 4 5 3
94 Boyer-Moore i = 12 a a a a a a b b a j = 5 L() 4 5 3
95 Boyer-Moore i = 12 a a a a a a b b a j = 5 L() 4 5 3
96 Boyer-Moore i = 12 a a a a a a b b a j = 5 L() 4 5 3
97 Boyer-Moore i = 13 a a a a a a b b a j = 5 L() 4 5 3
98 Boyer-Moore i = 15 a a a a a a b b a j = 5 L() 4 5 3
99 Boyer-Moore i = 10 a a a a a a b b a
100 Boyer-Moore a a a a a a b b a Men hva er svakheten til Boyer-More?
101 Boyer-Moore i = 8 a a a a a a b b a j = 2
102 Boyer-Moore i = 12 a a a a a a b b a j = 5
103 Boyer-Moore i = 8 a a a a a a b b a j = 2
104 Boyer-Moore i = 8 a a a a a a b b a j = 2
105 Boyer-Moore i = 8 a a a a a a b b a j = 2
106 Boyer-Moore i = 15 a a a a a a b b a j = 5
107 Boyer-Moore med good suffix shift i = 15 a a a a a a b b a j = 5
108 Boyer-Moore med good suffix shift i = 8 a a a a a a b b a j = 2
109 Boyer-Moore med good suffix shift i = 15 a a a a a a b b a j = 5
110 Knuth-Morris-Pratt-algoritmen a a a a a a b b a
111 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a
112 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a
113 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a
114 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a
115 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a
116 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a
117 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a
118 Knuth-Morris-Pratt-algoritmen i a a a a a a b b a
119 Knuth-Morris-Pratt-algoritmen i a a a a a a b b a
120 Knuth-Morris-Pratt-algoritmen i a a a a a a b b a
121 Knuth-Morris-Pratt-algoritmen i a a a a a a b b a
122 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a Ingen sammenligning nødvendig her
123 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a Første sammenligning etter flytting av j ( j 1 )
124 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a Mismath, og vi flytter ett hakk ( j 0 )
125 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a Mismath, og vi flytter ett hakk ( j 0 )
126 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a
127 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a
128 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a
129 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a
130 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a Mismath, og vi flytter 4 hakk ( j 0 )
131 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a Mismath, og vi flytter 4 hakk ( j 0 )
132 Knuth-Morris-Pratt-algoritmen i a a a a a a b b j a Mismath, og vi flytter 1 hakk ( i 0 )
133 Knuth-Morris-Pratt-algoritmen a a a a a a i b b j a
134 Knuth-Morris-Pratt-algoritmen a a a a a a b b a 7 a a j P[j] a F(j) a a
135 Knuth-Morris-Pratt-algoritmen the failure funtion Også kjent som «partial math-table» j P[j] a F(j)
136 Knuth-Morris-Pratt-algoritmen the failure funtion Også kjent som «partial math-table» Knuth-Morris-Pratt s algorithm preproesses the pattern to find mathes of prefixes of the pattern with the pattern itself j P[j] a F(j)
137 Knuth-Morris-Pratt-algoritmen the failure funtion Også kjent som «partial math-table» Knuth-Morris-Pratt s algorithm preproesses the pattern to find mathes of prefixes of the pattern with the pattern itself The failure funtion F(j) is defined as the size of the largest prefix of P[0..j] that is also a suffix of P[1..j] j P[j] a F(j)
138 Knuth-Morris-Pratt-algoritmen the failure funtion Også kjent som «partial math-table» Knuth-Morris-Pratt s algorithm preproesses the pattern to find mathes of prefixes of the pattern with the pattern itself The failure funtion F(j) is defined as the size of the largest prefix of P[0..j] that is also a suffix of P[1..j] Knuth-Morris-Pratt s algorithm modifies the brute-fore algorithm so that if a mismath ours at P[j] T[i] we set j F( j - 1) j P[j] a F(j)
139 j P[j] a F(j) 0 F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j]
140 j P[j] a F(j) 0 F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..1] = ab P[1..1] = b Altså lengste prefiks i ab som også er suffiks i b
141 j P[j] a F(j) 0 0 F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..1] = ab P[1..1] = b Altså lengste prefiks i ab som også er suffiks i b
142 j P[j] a F(j) 0 0 F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..2] = aba P[1..2] = ba Altså lengste prefiks i aba som også er suffiks i ba
143 j P[j] a F(j) 0 0 F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..2] = aba P[1..2] = ba Altså lengste prefiks i ab som også er suffiks i ba
144 j P[j] a F(j) F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..2] = aba P[1..2] = ba Altså lengste prefiks i ab som også er suffiks i ba
145 j P[j] a F(j) F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..3] = aba P[1..3] = ba Altså lengste prefiks i aba som også er suffiks i ba
146 j P[j] a F(j) F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..3] = aba P[1..3] = ba Altså lengste prefiks i aba som også er suffiks i ba
147 j P[j] a F(j) F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..4] = abaa P[1..4] = baa Altså lengste prefiks i abaa som også er suffiks i baa
148 j P[j] a F(j) F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..4] = abaa P[1..4] = baa Altså lengste prefiks i abaa som også er suffiks i baa
149 j P[j] a F(j) F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..4] = abaa P[1..4] = baa Altså lengste prefiks i abaa som også er suffiks i baa
150 j P[j] a F(j) F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..5] = abaab P[1..4] = baab Altså lengste prefiks i abaab som også er suffiks i baab
151 j P[j] a F(j) F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..5] = abaab P[1..4] = baab Altså lengste prefiks i abaab som også er suffiks i baab
152 j P[j] a F(j) F(j) er definert som lengden av lengste prefikset i P[0..j] som også er suffiks i P[1..j] P[0..5] = abaab P[1..4] = baab Altså lengste prefiks i abaab som også er suffiks i baab
153 KMP Failure Funtion Knuth-Morris-Pratt s algorithm preproesses the pattern to find mathes of prefixes of the pattern with the pattern itself The failure funtion F(j) is defined as the size of the largest prefix of P[0..j] that is also a suffix of P[1..j] Knuth-Morris-Pratt s algorithm modifies the brutefore algorithm so that if a mismath ours at P[j] T[i] we set j F(j - 1) j P[j] a a F(j) a x..... a a j a a F(j 1)
154 The KMP Algorithm The failure funtion an be represented by an array and an be omputed in O(m) time At eah iteration of the whileloop, either i inreases by one, or the shift amount i - j inreases by at least one (observe that F(j - 1) < j) Hene, there are no more than 2n iterations of the whileloop Thus, KMP s algorithm runs in optimal time O(m + n) Algorithm KMPMath(T, P) F failurefuntion(p) i 0 j 0 while i < n if T[i] = P[j] if j = m - 1 return i - j { math } else i i + 1 j j + 1 else if j > 0 j F[j - 1] else i i + 1 return -1 { no math }
Søking i strenger. Prefiks-søking Naiv algoritme Knuth-Morris-Pratt-algoritmen Suffiks-søking Boyer-Moore-algoritmen Hash-basert Karp-Rabin-algoritmen
Søking i strenger Vanlige søkealgoritmer (on-line-søk) Prefiks-søking Naiv algoritme Knuth-Morris-Pratt-algoritmen Suffiks-søking Boyer-Moore-algoritmen Hash-basert Karp-Rabin-algoritmen Indeksering av
DetaljerTuringmaskiner.
Turingmaskiner http://www.youtube.com/watch?v=e3kelemwfhy http://www.youtube.com/watch?v=cyw2ewoo6c4 Søking i strenger Vanlige søkealgoritmer (on-line-søk) Prefiks-søking Naiv algoritme Knuth-Morris-Pratt-algoritmen
DetaljerINF 4130 / / Dagens foiler hovedsakelig laget av Petter Kristiansen Foreleser Stein Krogdahl Obliger:
INF 4130 / 9135 29/8-2012 Dagens foiler hovedsakelig laget av Petter Kristiansen Foreleser Stein Krogdahl Obliger: Tre stykker, som må godkjennes. Frister: 21. sept, 26. okt, 16. nov Andre, «nærliggende»
DetaljerPattern matching algorithms. INF Algoritmer og datastrukturer. Lokalisering av Substrenger. Brute force
Pattern matching algorithms INF2220 - Algoritmer og datastrukturer HØSTEN 2009 Institutt for informatikk, Universitetet i Oslo Algoritmer for lokalisering av substrenger Brute force Enkleste tenkelige
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2015 Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 10: Tekstalgoritmer 1 Ingrid Chieh Yu (Ifi, UiO) INF2220 H2015, forelesning 10 1
DetaljerStein Krogdahl, Dino Karabeg, Petter Kristiansen. Kenneth A. Berman and Jerome L. Paul.
Stein Krogdahl, Dino Karabeg, Petter Kristiansen steinkr at ifi.uio.no dino at ifi.uio.no pettkr at ifi.uio.no INF 4130 / 9135 Algoritmer: Design og effektivitet Algorithms: Sequential Parallel and Distributed
DetaljerDynamic Programming Longest Common Subsequence. Class 27
Dynamic Programming Longest Common Subsequence Class 27 Protein a protein is a complex molecule composed of long single-strand chains of amino acid molecules there are 20 amino acids that make up proteins
DetaljerSlope-Intercept Formula
LESSON 7 Slope Intercept Formula LESSON 7 Slope-Intercept Formula Here are two new words that describe lines slope and intercept. The slope is given by m (a mountain has slope and starts with m), and intercept
DetaljerNeural Network. Sensors Sorter
CSC 302 1.5 Neural Networks Simple Neural Nets for Pattern Recognition 1 Apple-Banana Sorter Neural Network Sensors Sorter Apples Bananas 2 Prototype Vectors Measurement vector p = [shape, texture, weight]
DetaljerINF2820 Datalingvistikk V2011. Jan Tore Lønning & Stephan Oepen
INF2820 Datalingvistikk V2011 Jan Tore Lønning & Stephan Oepen TABELLPARSING 1. mars 2011 2 I dag Oppsummering fra sist: Recursive-descent og Shift-reduce parser Svakheter med disse Tabellparsing: Dynamisk
DetaljerØvingsforelesning 3 Python (TDT4110)
Øvingsforelesning 3 Python (TDT4110) For og While-løkker Ole-Magnus Pedersen Oversikt Praktisk Info Gjennomgang av øving 1 Programmering for Øving 3 2 Studasser og Piazza Studasser er der for å hjelpe
Detaljer3/1/2011. I dag. Recursive descent parser. Problem for RD-parser: Top Down Space. Jan Tore Lønning & Stephan Oepen
INF2820 Datalingvistikk V2011 TABELLPARSING Jan Tore Lønning & Stephan Oepen 1. mars 2011 2 I dag Oppsummering fra sist: Recursive-descent og Shift-reduce parser Svakheter med disse Tabellparsing: Dynamisk
Detaljer7) Radix-sortering sekvensielt kode og effekten av cache
) Radix-sortering sekvensielt kode og effekten av cache Dels er denne gjennomgangen av vanlig Radix-sortering viktig for å forstå en senere parallell versjon. Dels viser den effekten vi akkurat så tilfeldig
DetaljerUNIVERSITETET I OSLO
Eksamen i UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamensdag: 15. desember 2010 Tid for eksamen: 14.30 18.30 Oppgavesettet er på 8 sider. Vedlegg: Tillatte hjelpemidler: INF2220
DetaljerOm Kurset og Analyse av Algoritmer
Om Kurset og Analyse av Algoritmer Lars Vidar Magnusson 8.1.2014 Praktisk informasjon om kurset Hva er en algoritme? (kapittel 1) Hvordan analysere en algoritme? (kapittel 2) Praktisk Informasjon Introduction
Detaljerstjerneponcho for voksne star poncho for grown ups
stjerneponcho for voksne star poncho for grown ups www.pickles.no / shop.pickles.no NORSK Størrelser XS (S) M (L) Garn Pickles Pure Alpaca 300 (350) 400 (400) g hovedfarge 100 (100) 150 (150) g hver av
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF 3230 Formell modellering og analyse av kommuniserende systemer Eksamensdag: 4. juni 2010 Tid for eksamen: 9.00 12.00 Oppgavesettet
DetaljerMAT1030 Plenumsregning 3
MAT1030 Plenumsregning 3 Ukeoppgaver Mathias Barra - 30. januar 2009 (Sist oppdatert: 2009-02-02 14:26) Plenumsregning 3 Oppgave 2.7 - Horners metode (a) 7216 8 : 7 8+2 58 8+1 465 8+6 3726. Svar: 3726
DetaljerUnit Relational Algebra 1 1. Relational Algebra 1. Unit 3.3
Relational Algebra 1 Unit 3.3 Unit 3.3 - Relational Algebra 1 1 Relational Algebra Relational Algebra is : the formal description of how a relational database operates the mathematics which underpin SQL
DetaljerKap 2: Løkker og lister
Kap 2: Løkker og lister Ole Christian Lingjærde, Inst for Informatikk, UiO 26-30 August, 2019 (Del 2 av 2) Forrige forelesning på en foil Formatert utskrift: %-operator og f-strings To typer løkker: while-løkker
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF2220 Algoritmer og datastrukturer Eksamensdag: 16. desember 2013 Tid for eksamen: 14.30 18.30 Oppgavesettet er på 8 sider.
DetaljerKondisjonstest. Algoritmer og datastrukturer. Python-oppgaver. Onsdag 6. oktober Her er noen repetisjonsoppgaver i Python.
Algoritmer og datastrukturer Kondisjonstest Python-oppgaver Onsdag 6. oktober 2004 Her er noen repetisjonsoppgaver i Python. Som alltid er den beste måten å lære å programmere på å sette seg ned og programmere
DetaljerIN2010: Algoritmer og Datastrukturer Series 2
Universitetet i Oslo Institutt for Informatikk S.M. Storleer, S. Kittilsen IN2010: Algoritmer og Datastrukturer Series 2 Tema: Grafteori 1 Publisert: 02. 09. 2019 Utvalgte løsningsforslag Oppgave 1 (Fra
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i Eksamensdag: 12. desember 2008 Tid for eksamen: 9.00 12.00 Oppgavesettet er på 7 sider. Vedlegg: Tillatte hjelpemidler: INF2220
DetaljerMAT1030 Diskret matematikk
MAT1030 Diskret matematikk Plenumsregning 1: Kapittel 1 Roger Antonsen Matematisk Institutt, Universitetet i Oslo 17. januar 2008 Velkommen til plenumsregning for MAT1030 Torsdager 10:15 12:00 Gjennomgang
DetaljerLøsningsforslag Kontinuasjonseksamen i TDT4110 Informasjonsteknologi - grunnkurs
Side 1 av 7 Institutt for datateknikk og informasjonsvitenskap Løsningsforslag Kontinuasjonseksamen i TDT4110 Informasjonsteknologi - grunnkurs Eksamensdato: 2017-08-18 Oppgave 1: Flervalgsoppgave (25%)
DetaljerSAS FANS NYTT & NYTTIG FRA VERKTØYKASSA TIL SAS 4. MARS 2014, MIKKEL SØRHEIM
SAS FANS NYTT & NYTTIG FRA VERKTØYKASSA TIL SAS 4. MARS 2014, MIKKEL SØRHEIM 2 TEMA 1 MULTIPROSESSERING MED DATASTEGET Multiprosessering har lenge vært et tema i SAS Stadig ny funksjonalitet er med på
DetaljerIN1140, H2018 gruppetime oppgaver Introduksjon til Tekst i Python
IN1140, H2018 gruppetime oppgaver Introduksjon til Tekst i Python I disse oppgavene skal vi introdusere Python, og vise hvordan vi kan jobbe med tekst i Python. Vi skal se på hva et programmeringsspråk
DetaljerLynkurs i shellprogrammering under Linux
Lynkurs i shellprogrammering under Linux Interaktiv bruk av shell Shell/skall er en applikasjon som lar bruker taste inn tekstlige kommandoer til Linux en og en linje om gangen (leser linjer fra stdin).
DetaljerInformation search for the research protocol in IIC/IID
Information search for the research protocol in IIC/IID 1 Medical Library, 2013 Library services for students working with the research protocol and thesis (hovedoppgaven) Open library courses: http://www.ntnu.no/ub/fagside/medisin/medbiblkurs
DetaljerINF2820 Datalingvistikk V2015. Jan Tore Lønning
INF2820 Datalingvistikk V2015 Jan Tore Lønning ENDELIGE TILSTANDSTEKNIKKER OG REGULÆRE UTTRYKK I DATALINGVISTIKK DEL 2 26. januar 2015 2 ENDELIGE AUTOMATER «FINITE STATE AUTOMATA» (FSA) 26. januar 2015
DetaljerINF2820 Datalingvistikk V2016. Jan Tore Lønning
INF2820 Datalingvistikk V2016 Jan Tore Lønning ENDELIGE AUTOMATER «FINITE STATE AUTOMATA» (FSA) 25. januar 2016 2 Fysisk modell En tape delt opp i ruter. I hver rute står det et symbol. En innretning som
DetaljerINF2820 Datalingvistikk V2016. Jan Tore Lønning
INF2820 Datalingvistikk V2016 Jan Tore Lønning ENDELIGE AUTOMATER «FINITE STATE AUTOMATA» (FSA) 3. februar 2016 2 Fysisk modell En tape delt opp i ruter. I hver rute står det et symbol. En innretning som
DetaljerHvor mye teoretisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye)
INF234 Er du? Er du? - Annet Hvor mye teoretisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye) Hvor mye praktisk kunnskap har du tilegnet deg på dette emnet? (1 = ingen, 5 = mye) Hvor
DetaljerDatabases 1. Extended Relational Algebra
Databases 1 Extended Relational Algebra Relational Algebra What is an Algebra? Mathematical system consisting of: Operands --- variables or values from which new values can be constructed. Operators ---
DetaljerMAT1030 Diskret matematikk
MAT1030 Diskret matematikk Plenumsregning 4: Ukeoppgaver fra kapittel 3 & 4 Roger Antonsen Matematisk Institutt, Universitetet i Oslo 7. februar 2008 Oppgave 3.15 Forklar følgende påstand ved å vise til
DetaljerMA2501 Numerical methods
MA250 Numerical methods Solutions to problem set Problem a) The function f (x) = x 3 3x + satisfies the following relations f (0) = > 0, f () = < 0 and there must consequently be at least one zero for
DetaljerDen som gjør godt, er av Gud (Multilingual Edition)
Den som gjør godt, er av Gud (Multilingual Edition) Arne Jordly Click here if your download doesn"t start automatically Den som gjør godt, er av Gud (Multilingual Edition) Arne Jordly Den som gjør godt,
DetaljerObject [] element. array. int [] tall
Datastrukturer Object [] int [] tall array element 0 1 2 3 4 5 0 1 2 3 4 5 6 7 8 40 55 63 17 22 68 89 97 89 graf lenkeliste graf Object data Node neste Node neste Node neste Node neste Node Node neste
DetaljerNorsk (English below): Guide til anbefalt måte å printe gjennom plotter (Akropolis)
Norsk (English below): Guide til anbefalt måte å printe gjennom plotter (Akropolis) 1. Gå til print i dokumentet deres (Det anbefales å bruke InDesign til forberedning for print) 2. Velg deretter print
DetaljerBildebehandling med Python og EzGraphics
Bildebehandling med Python og EzGraphics I denne oppgaven skal dere jobbe med bildebehandling. På samme måte som vi jobbet med lyd tidligere, skal vi nå se på bilder. Vi kan bruke EzGraphics til alt vi
DetaljerUNIVERSITY OF OSLO DEPARTMENT OF ECONOMICS
UNIVERSITY OF OSLO DEPARTMENT OF ECONOMICS Postponed exam: ECON420 Mathematics 2: Calculus and linear algebra Date of exam: Tuesday, June 8, 203 Time for exam: 09:00 a.m. 2:00 noon The problem set covers
DetaljerØvingsforelesning 1 Python (TDT4110)
Øvingsforelesning 1 Python (TDT4110) Introduksjon, Kalkulasjoner Ole-Magnus Pedersen Oversikt Praktisk Info Repetisjon fra sist Oppgaver for øving 2 2 Praktisk Info Last opp øvinger på Blackboard før godkjenning
DetaljerINF2820 Datalingvistikk V2017 Forelesning 1.2 Jan Tore Lønning
INF2820 Datalingvistikk V2017 Forelesning 1.2 Jan Tore Lønning ENDELIGE TILSTANDSMASKINER OG REGULÆRE SPRÅK 19. januar 2017 2 Fysisk modell En tape delt opp i ruter. I hver rute står det et symbol. En
DetaljerUNIVERSITETET I OSLO
UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet Eksamen i INF 3230 Formell modellering og analyse av kommuniserende systemer Eksamensdag: 4. april 2008 Tid for eksamen: 9.00 12.00 Oppgavesettet
DetaljerLinux-programmer som bruker regulæruttrykk: grep, sed, awk
Linux-programmer som bruker regulæruttrykk: grep, sed, awk grep * søking i tekstlige data grep [OPTIONS] REGEX [FILE...] Verktøy som finnes i alle Unix-lignende OS Leser en eller flere tekstfiler, eller
DetaljerMoving Objects. We need to move our objects in 3D space.
Transformations Moving Objects We need to move our objects in 3D space. Moving Objects We need to move our objects in 3D space. An object/model (box, car, building, character,... ) is defined in one position
DetaljerHvordan føre reiseregninger i Unit4 Business World Forfatter:
Hvordan føre reiseregninger i Unit4 Business World Forfatter: dag.syversen@unit4.com Denne e-guiden beskriver hvordan du registrerer en reiseregning med ulike typer utlegg. 1. Introduksjon 2. Åpne vinduet
Detaljer1 User guide for the uioletter package
1 User guide for the uioletter package The uioletter is used almost like the standard LATEX document classes. The main differences are: The letter is placed in a \begin{letter}... \end{letter} environment;
DetaljerPlenumsregning 1. Kapittel 1. Roger Antonsen januar Velkommen til plenumsregning for MAT1030. Repetisjon: Algoritmer og pseudokode
Plenumsregning 1 Kapittel 1 Roger Antonsen - 17. januar 2008 Velkommen til plenumsregning for MAT1030 Torsdager 10:15 12:00 Gjennomgang av ukeoppgaver Gjennomgang av eksempler fra boka Litt repetisjon
DetaljerIkke lineære likninger
Ikke lineære likninger Opp til nå har vi studert lineære likninger og lineære likningsystemer. 1/19 Ax = b Ax b = 0. I en dimensjon, lineære likninger kan alltid løses ved hjelp av formler: ax + b = 0
DetaljerUNIVERSITETET I OSLO ØKONOMISK INSTITUTT
UNIVERSITETET I OSLO ØKONOMISK INSTITUTT Eksamen i: ECON1910 Poverty and distribution in developing countries Exam: ECON1910 Poverty and distribution in developing countries Eksamensdag: 1. juni 2011 Sensur
DetaljerEMPIC MEDICAL. Etterutdanningskurs flyleger 21. april Lars (Lasse) Holm Prosjektleder Telefon: E-post:
EMPIC MEDICAL Etterutdanningskurs flyleger 21. april 2017 Lars (Lasse) Holm Prosjektleder Telefon: +47 976 90 799 E-post: Lrh@caa.no it-vakt@caa.no Luftfartstilsynet T: +47 75 58 50 00 F: +47 75 58 50
DetaljerSyntax/semantics - I INF 3110/ /29/2005 1
Syntax/semantics - I Program program execution Compiling/interpretation Syntax Classes of langauges Regular langauges Context-free langauges Scanning/Parsing Meta models INF 3/4-25 8/29/25 Program
DetaljerProgrammeringsspråket C Del 2. Hans Petter Taugbøl Kragset
Programmeringsspråket C Del 2 Hans Petter Taugbøl Kragset Repetisjon I C er ikke array en egen type, men variabler kan være arrayer! 28.08.17 Hans Petter Taugbøl Kragset 2 Arrays Java int[] arr1 = {1,
DetaljerKROPPEN LEDER STRØM. Sett en finger på hvert av kontaktpunktene på modellen. Da får du et lydsignal.
KROPPEN LEDER STRØM Sett en finger på hvert av kontaktpunktene på modellen. Da får du et lydsignal. Hva forteller dette signalet? Gå flere sammen. Ta hverandre i hendene, og la de to ytterste personene
DetaljerIN uke 1. Komme i gang med programmering
IN1000 - uke 1 Komme i gang med programmering Plan for forelesingen Hva er programmering? Skrive og kjøre våre første program Variabler Feilmeldinger Innlesing fra tastatur Beslutninger (if) Plan for forelesingen
DetaljerMAT1030 Diskret Matematikk
MAT1030 Diskret Matematikk Plenumsregning 1: Kapittel 1 Mathias Barra Matematisk institutt, Universitetet i Oslo 16. januar 2009 (Sist oppdatert: 2009-02-02 14:21) Plenumsregning 1 MAT1030 Diskret Matematikk
DetaljerTMA4329 Intro til vitensk. beregn. V2017
Norges teknisk naturvitenskapelige universitet Institutt for Matematiske Fag TMA439 Intro til vitensk. beregn. V17 ving 4 [S]T. Sauer, Numerical Analysis, Second International Edition, Pearson, 14 Teorioppgaver
DetaljerLØSNINGSFORSLAG, EKSAMEN I ALGORITMER OG DATASTRUKTURER (IT1105)
Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Side 1 av 8 Faglig kontakt under eksamen: Magnus Lie Hetland LØSNINGSFORSLAG, EKSAMEN I ALGORITMER OG DATASTRUKTURER
DetaljerKondisjonstest. Algoritmer og datastrukturer. Python-oppgaver - LF. Onsdag 6. oktober Her er noen repetisjonsoppgaver i Python.
Algoritmer og datastrukturer Kondisjonstest Python-oppgaver - LF Onsdag 6. oktober 2004 Her er noen repetisjonsoppgaver i Python. Som alltid er den beste måten å lære å programmere på å sette seg ned og
DetaljerVelkommen til plenumsregning for MAT1030. MAT1030 Diskret matematikk. Repetisjon: Algoritmer og pseudokode. Eksempel fra boka. Eksempel
Velkommen til plenumsregning for MAT1030 MAT1030 Diskret matematikk Plenumsregning 1: Kapittel 1 Roger Antonsen Matematisk Institutt, Universitetet i Oslo 17. januar 2008 Torsdager 10:15 12:00 Gjennomgang
DetaljerForelesning inf Java 5
Ole Chr. Lingjærde 1 Forelesning inf1000 - Java 5 Tema: Mer om metoder 2D-arrayer String Ole Christian Lingjærde, 26. september 2013 Ole Chr. Lingjærde Institutt for informatikk, 26. september 2013 1 Strukturen
DetaljerPython: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre
Python: Løkker TDT4110 IT Grunnkurs Professor Guttorm Sindre Læringsmål og pensum Mål Forstå hvorfor vi trenger løkker i programmering Ha kjennskap to ulike typer løkker (while-løkke, for-løkke) Og vite
DetaljerForelesning inf Java 5
Forelesning inf1000 - Java 5 Tema: Mer om metoder 2D-arrayer String Ole Christian Lingjærde, 26. september 2013 Ole Chr. Lingjærde Institutt for informatikk, 26. september 2013 1 Strukturen til et Java-program
DetaljerINF2820 Datalingvistikk V2012. Jan Tore Lønning
INF2820 Datalingvistikk V2012 Jan Tore Lønning TABELLPARSING OG CHART- PARSING 24. februar 2012 2 I dag Mellomspill: Chomsky Normal Form Tabellparsing: CKY-algoritmen Innlede Chart-Parsing 24. februar
DetaljerTUSEN TAKK! BUTIKKEN MIN! ...alt jeg ber om er.. Maren Finn dette og mer i. ... finn meg på nett! Grafiske lisenser.
TUSEN TAKK! Det at du velger å bruke mitt materiell for å spare tid og ha det kjekt sammen med elevene betyr mye for meg! Min lidenskap er å hjelpe flotte lærere i en travel hverdag, og å motivere elevene
DetaljerØvingsforelesning 5 Python (TDT4110)
Øvingsforelesning 5 Python (TDT4110) Repetisjon av løkker og funksjoner Ole-Magnus Pedersen Oversikt Praktisk Info Gjennomgang av Øving 3 Repetisjon 2 Praktisk info Prosjekter i PyCharm må startes med
DetaljerHøgskoleni østfold EKSAMEN
Høgskoleni østfold EKSAMEN 7 Emnekode:Emne: ITF10212Innføring i programmering Dato:Eksamenstid: 4. desember 2012 kl 09.00 til kl 13.00 Hjelpemidler: Faglærer: To A4-ark (4 sider) med egenproduserte notater
DetaljerTrigonometric Substitution
Trigonometric Substitution Alvin Lin Calculus II: August 06 - December 06 Trigonometric Substitution sin 4 (x) cos (x) dx When you have a product of sin and cos of different powers, you have three different
DetaljerOppgave 1a Definer følgende begreper: Nøkkel, supernøkkel og funksjonell avhengighet.
TDT445 Øving 4 Oppgave a Definer følgende begreper: Nøkkel, supernøkkel og funksjonell avhengighet. Nøkkel: Supernøkkel: Funksjonell avhengighet: Data i en database som kan unikt identifisere (et sett
DetaljerLevel Set methods. Sandra Allaart-Bruin. Level Set methods p.1/24
Level Set methods Sandra Allaart-Bruin sbruin@win.tue.nl Level Set methods p.1/24 Overview Introduction Level Set methods p.2/24 Overview Introduction Boundary Value Formulation Level Set methods p.2/24
DetaljerMAT1030 Plenumsregning 1
MAT1030 Plenumsregning 1 Kapittel 1 Mathias Barra - 16. januar 2009 (Sist oppdatert: 2009-02-02 14:21) Plenumsregning 1 Velkommen til plenumsregning for MAT1030 Fredager 12:15 14:00 Vi vil gjennomgå utvalgte
DetaljerForkurs INF1010. Dag 2. Andreas Færøvig Olsen Gard Inge Rosvold Institutt for Informatikk, 14.
Forkurs INF1010 Dag 2 Andreas Færøvig Olsen (andrefol@ifi.uio.no) Gard Inge Rosvold (gardir@ifi.uio.no) Institutt for Informatikk, 14. januar 2016 Forkurs INF1010 - dag 2 Feilmeldinger 2 Forkurs INF1010
DetaljerTUSEN TAKK! BUTIKKEN MIN! ...alt jeg ber om er.. Maren Finn dette og mer i. ... finn meg på nett! Grafiske lisenser.
TUSEN TAKK! Det at du velger å bruke mitt materiell for å spare tid og ha det kjekt sammen med elevene betyr mye for meg! Min lidenskap er å hjelpe flotte lærere i en travel hverdag, og å motivere elevene
DetaljerEndelig ikke-røyker for Kvinner! (Norwegian Edition)
Endelig ikke-røyker for Kvinner! (Norwegian Edition) Allen Carr Click here if your download doesn"t start automatically Endelig ikke-røyker for Kvinner! (Norwegian Edition) Allen Carr Endelig ikke-røyker
DetaljerØvingsforelesning 5 Python (TDT4110)
Øvingsforelesning 5 Python (TDT4110) Repetisjon av løkker og funksjoner Ole-Magnus Pedersen Oversikt Praktisk Info Gjennomgang av Øving 3 Repetisjon 2 Praktisk info Prosjekter i PyCharm må startes med
DetaljerEKSAMEN. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad.
EKSAMEN Emnekode: Emne: ITM20606 Webprogrammering med PHP Dato: Eksamenstid: 11/12-2007 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne) Faglærer: Tom
DetaljerBetinget eksekvering og logiske tester i shell
Betinget eksekvering og logiske tester i shell Betinget eksekvering *? Programmet utfører operasjon(er) bare hvis en logisk betingelse er sann Bash tilbyr to kontrollstrukturer for å kunne gjøre betinget
Detaljer<?php. count tar en array som argument, og returnerer et tall som uttrykker antallet innførsler i arrayen.
Hver gang funksjonen printhallo kalles utføres instruksjonene spesifisert i den. [Kurssidene] [ ABI - fagsider bibin ] Webprogrammering høsten 2015 //funksjonskall printhallo(); //enda en gang printhallo();
DetaljerTUSEN TAKK! BUTIKKEN MIN! ...alt jeg ber om er.. Maren Finn dette og mer i. ... finn meg på nett! Grafiske lisenser.
TUSEN TAKK! Det at du velger å bruke mitt materiell for å spare tid og ha det kjekt sammen med elevene betyr mye for meg! Min lidenskap er å hjelpe flotte lærere i en travel hverdag, og å motivere elevene
DetaljerMAT Oblig 1. Halvard Sutterud. 22. september 2016
MAT1110 - Oblig 1 Halvard Sutterud 22. september 2016 Sammendrag I dette prosjektet skal vi se på anvendelsen av lineær algebra til å generere rangeringer av nettsider i et web basert på antall hyperlinker
DetaljerUNIVERSITETET I OSLO ØKONOMISK INSTITUTT
UNIVERSITETET I OSLO ØKONOMISK INSTITUTT BOKMÅL Eksamen i: ECON1210 - Forbruker, bedrift og marked Eksamensdag: 26.11.2013 Sensur kunngjøres: 18.12.2013 Tid for eksamen: kl. 14:30-17:30 Oppgavesettet er
DetaljerINF2820 Datalingvistikk V2012. Jan Tore Lønning & Stephan Oepen
INF2820 Datalingvistikk V2012 Jan Tore Lønning & Stephan Oepen ENDELIGE TILSTANDSTEKNIKKER OG REGULÆRE UTTRYKK I DATALINGVISTIKK 17. januar 2012 2 Naturlige språk En mann kjøpte en bil av en mann som hadde
Detaljer2/24/2012. Dynamic Programming. I dag. Example. Example PARSING. Jan Tore Lønning
INF2820 Datalingvistikk V2012 Jan Tore Lønning TABELLPARSING OG CHART- PARSING 24. februar 2012 2 I dag Mellomspill: Chomsky Normal Form Tabellparsing: CKY-algoritmen Innlede Chart-Parsing Dynamic Programming
DetaljerNotater til INF2220 Eksamen
Notater til INF2220 Eksamen Lars Bjørlykke Kristiansen December 13, 2011 Stor O notasjon Funksjon Navn 1 Konstant log n Logaritmisk n Lineær n log n n 2 Kvadratisk n 3 Kubisk 2 n Eksponensiell n! Trær
DetaljerMAT1030 Diskret matematikk
Oppgave 1.1 MAT1030 Diskret matematikk Plenumsregning 2: Ukeoppgaver fra kapittel 1 & 2 Roger Antonsen Matematisk Institutt, Universitetet i Oslo 24. januar 2008 Modifiser algoritmen fra 1.2.1 slik at
DetaljerGir vi de resterende 2 oppgavene til én prosess vil alle sitte å vente på de to potensielt tidskrevende prosessene.
Figure over viser 5 arbeidsoppgaver som hver tar 0 miutter å utføre av e arbeider. (E oppgave ka ku utføres av é arbeider.) Hver pil i figure betyr at oppgave som blir pekt på ikke ka starte før oppgave
DetaljerINF5820 Natural Language Processing - NLP. H2009 Jan Tore Lønning
INF5820 Natural Language Processing - NLP H2009 jtl@ifi.uio.no HMM Tagging INF5830 Lecture 3 Sep. 7 2009 Today More simple statistics, J&M sec 4.2: Product rule, Chain rule Notation, Stochastic variable
DetaljerHan Ola of Han Per: A Norwegian-American Comic Strip/En Norsk-amerikansk tegneserie (Skrifter. Serie B, LXIX)
Han Ola of Han Per: A Norwegian-American Comic Strip/En Norsk-amerikansk tegneserie (Skrifter. Serie B, LXIX) Peter J. Rosendahl Click here if your download doesn"t start automatically Han Ola of Han Per:
DetaljerUkeoppgaver fra kapittel 3 & 4
Plenumsregning 4 Ukeoppgaver fra kapittel 3 & 4 Roger Antonsen - 7. februar 2008 Oppgave 3.15 Forklar følgende påstand ved å vise til beregninger med reelle tall på eksponentiell form: Man mister presisjon
DetaljerSitronelement. Materiell: Sitroner Galvaniserte spiker Blank kobbertråd. Press inn i sitronen en galvanisert spiker og en kobbertråd.
Materiell: Sitronelement Sitroner Galvaniserte spiker Blank kobbertråd Press inn i sitronen en galvanisert spiker og en kobbertråd. Nå har du laget et av elementene i et elektrisk batteri! Teori om elektriske
DetaljerMAT1030 Diskret matematikk
MAT1030 Diskret matematikk Plenumsregning 2: Ukeoppgaver fra kapittel 1 & 2 Roger Antonsen Matematisk Institutt, Universitetet i Oslo 24. januar 2008 Oppgave 1.1 Modifiser algoritmen fra 1.2.1 slik at
DetaljerINF Algoritmer og datastrukturer
INF2220 - Algoritmer og datastrukturer HØSTEN 2009 Institutt for informatikk, Universitetet i Oslo INF2220, forelesning 13: Eksamensgjennomgang Bjarne Holen (Ifi, UiO) INF2220 H2009, forelesning 13 1 /
DetaljerPhysical origin of the Gouy phase shift by Simin Feng, Herbert G. Winful Opt. Lett. 26, (2001)
by Simin Feng, Herbert G. Winful Opt. Lett. 26, 485-487 (2001) http://smos.sogang.ac.r April 18, 2014 Introduction What is the Gouy phase shift? For Gaussian beam or TEM 00 mode, ( w 0 r 2 E(r, z) = E
DetaljerUNIVERSITETET I OSLO ØKONOMISK INSTITUTT
UNIVERSITETET I OSLO ØKONOMISK INSTITUTT Eksamen i: ECON360/460 Samfunnsøkonomisk lønnsomhet og økonomisk politikk Exam: ECON360/460 - Resource allocation and economic policy Eksamensdag: Fredag 2. november
Detaljerklassisk angoragenser classic angora sweater
klassisk angoragenser classic angora sweater www.pickles.no / shop.pickles.no NORSK Størrelser XS (S) M (L) XL (XXL) Garn Pickles Angora 150 (175) 200 (225) 250 (275) g Pinner 80 og 40 cm rundpinne og
DetaljerGradient. Masahiro Yamamoto. last update on February 29, 2012 (1) (2) (3) (4) (5)
Gradient Masahiro Yamamoto last update on February 9, 0 definition of grad The gradient of the scalar function φr) is defined by gradφ = φr) = i φ x + j φ y + k φ ) φ= φ=0 ) ) 3) 4) 5) uphill contour downhill
DetaljerINF2220: Time 8 og 9 - Kompleksitet, beregnbarhet og kombinatorisk søk
INF0: Time 8 og 9 - Kompleksitet, beregnbarhet og kombinatorisk søk Mathias Lohne mathialo Rekursjonseksempel Eksempel Finn kjøretid for følgende program: (Ex11 b) 1 float foo(a) { n = Alength; 3 4 if
DetaljerFIRST LEGO League. Härnösand 2012
FIRST LEGO League Härnösand 2012 Presentasjon av laget IES Dragons Vi kommer fra Härnosänd Snittalderen på våre deltakere er 11 år Laget består av 4 jenter og 4 gutter. Vi representerer IES i Sundsvall
Detaljer