Algoritmit 2. Demot Timo Männikkö
|
|
- Olivia Salminen
- 6 vuotta sitten
- Katselukertoja:
Transkriptio
1 Algoritmit 2 Demot Timo Männikkö
2 Tehtävä 1 (a) int laske(n) { if (n <= 1) return 1; for (i = 0; i < w; i++) x = laske(n/2); for (j = 0; j < n; j++) for (k = 0; k < n; k++) x++; return x; } T (n) = missä c 1, c > 0 vakioita Kun n > 1 tehdään w kertaa rekursiivinen kutsu syöttötiedon koolla n/2 suoritetaan n 2 kertaa vakioaikainen lause { c 1, kun n 1, wt (n/2) + cn 2, kun n > 1, Algoritmit 2 Kevät 2019 Demot /23
3 Tehtävä 1 (b) T (n) = { c 1, kun n 1 wt (n/2) + cn 2, kun n > 1 Master-lauseessa a = w, b = 2, α = 2 ja c 0 Tapaus w = 3: a < b α T (n) = Θ(n α ) = Θ(n 2 ) Tapaus w = 4: a = b α T (n) = Θ(n α log b n) = Θ(n 2 log 2 n) Tapaus w = 5: a > b α T (n) = Θ(n log b a ) = Θ(n log 2 5 ) (log 2 5 2,32) Algoritmit 2 Kevät 2019 Demot /23
4 Tehtävä 2 (a) Kruskal(N, E) { S = E; // kaikki tiet T = tyhjä joukko; while (T ei muodosta virittävää puuta) { valitse lyhin tie (u,v) joukosta S; poista tie (u,v) joukosta S; if (tie (u,v) ei aiheuta silmukkaa T:ssä) lisää tie (u,v) joukkoon T; } return T; } Algoritmit 2 Kevät 2019 Demot /23
5 Tehtävä 2 (a) jatkuu S T (A,B) (A,C) (A,D) (A,E) (B,C) (B,D) - (B,E) (C,D) (D,E) (A,B) (A,C) (A,D) (B,C) (B,D) (B,E) (C,D) (D,E) (A,B) (A,C) (A,D) (B,D) (B,E) (C,D) (D,E) (A,B) (A,C) (B,D) (B,E) (C,D) (D,E) (A,B) (A,C) (B,D) (B,E) (C,D) (A,C) (B,D) (B,E) (C,D) (A,E) (A,E) (B,C) (A,E) (B,C) (A,D) (A,E) (B,C) (A,D) (A,E) (B,C) (A,D) (A,B) Algoritmit 2 Kevät 2019 Demot /23
6 Tehtävä 2 (b) Prim(N, E) { U = {aloitussolmu}; T = tyhjä joukko; while (U ei sisällä kaikkia solmuja) { valitse lyhin tie (u,v), jolla u on U:ssa ja v ei ole U:ssa; lisää tie (u,v) joukkoon T; lisää solmu v joukkoon U; } return T; } Algoritmit 2 Kevät 2019 Demot /23
7 Tehtävä 2 (b) U T A - A E (A,E) A E D (A,E) (A,D) A E D B (A,E) (A,D) (A,B) A E D B C (A,E) (A,D) (A,B) (B,C) E 2 A 6 4 D B 3 C Algoritmit 2 Kevät 2019 Demot /23
8 Tehtävä 3 (a) Huffmanin koodit merkeille, joiden esiintymistiheydet ovat: a b c d e f g / \ 3 7 Algoritmit 2 Kevät 2019 Demot /23
9 Tehtävä 3 (a) jatkuu / \ / \ / \ / \ / \ / \ / \ / \ / \ 3 7 Algoritmit 2 Kevät 2019 Demot /23
10 Tehtävä 3 (a) jatkuu / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ / \ 3 7 Algoritmit 2 Kevät 2019 Demot /23
11 Tehtävä 3 (a) jatkuu * / \ * / \ 0 / \ 1 * * / \ / \ / \ g * * a / \ / \ * c f b / \ d e Koodit: a b c d e f g Algoritmit 2 Kevät 2019 Demot /23
12 Tehtävä 3 (b) a b c d e f g Vakiopituinen koodi, 3 bittiä/merkki: = 315 bittiä Huffmanin koodit: = 273 bittiä Tilaa säästyy 42 bittiä, joka on 13,3 % vakiopituisen tarvitsemasta tilasta. Algoritmit 2 Kevät 2019 Demot /23
13 Tehtävä 4 (a) ababbabbbabb 0 1 a b a babbabbbabb a b ab ab abbabbbabb a b ab ba Algoritmit 2 Kevät 2019 Demot /23
14 Tehtävä 4 (a) jatkuu abab babbbabb a b ab ba abb ababba bbbabb a b ab ba abb bab ababbab bbabb a b ab ba abb bab bb Algoritmit 2 Kevät 2019 Demot /23
15 Tehtävä 4 (a) jatkuu ababbabbb abb a b ab ba abb bab bb bba ababbabbbabb a b ab ba abb bab bb bba Merkkijonon pituus 12 ja koodin pituus 7, joten tilaa säästyy 5/12 41,7 % Algoritmit 2 Kevät 2019 Demot /23
16 Tehtävä 4 (b) a b b 0 1 a b bb a b bb Algoritmit 2 Kevät 2019 Demot /23
17 Tehtävä 4 (b) jatkuu bba a b bb ba bbaaa a b bb ba aa bbaaabb a b bb ba aa aab Algoritmit 2 Kevät 2019 Demot /23
18 Tehtävä 4 (b) jatkuu bbaaabba a b bb ba aa aab bba bbaaabbaba a b bb ba aa aab bba ab bbaaabbababba a b bb ba aa aab bba ab bab Merkkijonon pituus 13 ja koodin pituus 8, joten tilaa säästyy 5/13 38,5 % Algoritmit 2 Kevät 2019 Demot /23
19 Tehtävä 5 Merkkijonoissa a (pituus m) ja b (pituus n) on kirjaimia aakkosjärjestyksessä Kukin kirjain voi esiintyä samassa merkkijonossa vain kerran Montako yhteistä kirjainta merkkijonoilla a ja b on? Algoritmit 2 Kevät 2019 Demot /23
20 Tehtävä 5 Taulukointimenetelmä: Jos merkit a i ja b j ovat samat, lasketaan merkkijonojen a 1 a 2... a i 1 ja b 1 b 2... b j 1 yhteiset merkit ja lisätään yksi Jos merkit a i ja b j eivät ole samoja, lasketaan merkkijonojen a 1 a 2... a i 1 ja b 1 b 2... b j sekä merkkijonojen a 1 a 2... a i ja b 1 b 2... b j 1 yhteiset merkit ja valitaan näistä suurempi Merkkijonot a[1..m] ja b[1..n] Yhteisten merkkien lukumäärä d[0..m][0..n] Algoritmit 2 Kevät 2019 Demot /23
21 Tehtävä 5 (a) 1. for (i = 0; i <= m; i++) d[i][0] = 0; 2. for (j = 0; j <= n; j++) d[0][j] = 0; 3. for (i = 1; i <= m; i++) { for (j = 1; j <= n; j++) { if (a[i] == b[j]) d[i][j] = d[i-1][j-1] + 1; else d[i][j] = max(d[i-1][j], d[i][j-1]); } } 4. return d[m][n]; Algoritmit 2 Kevät 2019 Demot /23
22 Tehtävä 5 (b) A B D G K M A C G J M P Algoritmit 2 Kevät 2019 Demot /23
23 Tehtävä 5 (c) C F K L N R T B C H K N R Algoritmit 2 Kevät 2019 Demot /23
Algoritmit 2. Luento 9 Ti Timo Männikkö
Algoritmit 2 Luento 9 Ti 17.4.2018 Timo Männikkö Luento 9 Merkkitiedon tiivistäminen Huffmanin koodi LZW-menetelmä Taulukointi Editointietäisyys Algoritmit 2 Kevät 2018 Luento 9 Ti 17.4.2018 2/29 Merkkitiedon
Algoritmit 2. Luento 9 Ti Timo Männikkö
Algoritmit 2 Luento 9 Ti 19.4.2016 Timo Männikkö Luento 9 Merkkitiedon tiivistäminen LZW-menetelmä Taulukointi Editointietäisyys Peruutus Verkon 3-väritys Algoritmit 2 Kevät 2016 Luento 9 Ti 19.4.2016
Algoritmit 2. Luento 14 Ke Timo Männikkö
Algoritmit 2 Luento 14 Ke 3.5.2017 Timo Männikkö Luento 14 Ositus ja rekursio Rekursion toteutus Kertaus ja tenttivinkit Algoritmit 2 Kevät 2017 Luento 14 Ke 3.5.2017 2/30 Ositus Tehtävän esiintymä ositetaan
Algoritmit 2. Luento 10 To Timo Männikkö
Algoritmit 2 Luento 10 To 11.4.2019 Timo Männikkö Luento 10 Merkkitiedon tiivistäminen LZW-menetelmä Taulukointi Editointietäisyys Peruutusmenetelmä Osajoukon summa Algoritmit 2 Kevät 2019 Luento 10 To
Algoritmit 2. Demot Timo Männikkö
Algoritmit 2 Demot 1 27.-28.3.2019 Timo Männikkö Tehtävä 1 (a) 4n 2 + n + 4 = O(n 2 ) c, n 0 > 0 : 0 4n 2 + n + 4 cn 2 n n 0 Vasen aina tosi Oikea tosi, jos (c 4)n 2 n 4 0, joten oltava c > 4 Kokeillaan
Algoritmit 2. Luento 7 Ti Timo Männikkö
Algoritmit 2 Luento 7 Ti 4.4.2017 Timo Männikkö Luento 7 Joukot Joukko-operaatioita Joukkojen esitystapoja Alkiovieraat osajoukot Toteutus puurakenteena Algoritmit 2 Kevät 2017 Luento 7 Ti 4.4.2017 2/26
Algoritmit 1. Demot Timo Männikkö
Algoritmit 1 Demot 1 31.1.-1.2.2018 Timo Männikkö Tehtävä 1 (a) Algoritmi, joka tutkii onko kokonaisluku tasan jaollinen jollain toisella kokonaisluvulla siten, että ei käytetä lainkaan jakolaskuja Jaettava
Algoritmit 2. Luento 8 To Timo Männikkö
Algoritmit 2 Luento 8 To 4.4.2019 Timo Männikkö Luento 8 Algoritmien analysointi Algoritmien suunnittelu Rekursio Osittaminen Rekursioyhtälöt Rekursioyhtälön ratkaiseminen Master-lause Algoritmit 2 Kevät
Algoritmit 1. Luento 11 Ti Timo Männikkö
Algoritmit 1 Luento 11 Ti 14.2.2017 Timo Männikkö Luento 11 Algoritminen ongelmanratkaisu Osittaminen Lomituslajittelu Lomituslajittelun vaativuus Rekursioyhtälöt Pikalajittelu Algoritmit 1 Kevät 2017
Algoritmit 1. Luento 13 Ma Timo Männikkö
Algoritmit 1 Luento 13 Ma 26.2.2018 Timo Männikkö Luento 13 Suunnittelumenetelmät Taulukointi Kapsäkkiongelma Ahne menetelmä Verkon lyhimmät polut Dijkstran menetelmä Verkon lyhin virittävä puu Kruskalin
Algoritmit 2. Luento 8 Ke 13.4.2016. Timo Männikkö
Algoritmit 2 Luento 8 Ke 13.4.2016 Timo Männikkö Luento 8 Rekursioyhtälöt Master-lause Lähin pistepari Ahne menetelmä Lyhin virittävä puu Kruskalin menetelmä Primin menetelmä Merkkitiedon tiivistäminen
Laskennan mallit (syksy 2010) Harjoitus 8, ratkaisuja
582206 Laskennan mallit (syksy 2010) Harjoitus 8, ratkaisuja 1. Tarkastellaan yhteydetöntä kielioppia S SAB ε A aa a B bb ε Esitä merkkijonolle aa kaksi erilaista jäsennyspuuta ja kummallekin siitä vastaava
Algoritmit 1. Demot Timo Männikkö
Algoritmit 1 Demot 1 25.-26.1.2017 Timo Männikkö Tehtävä 1 (a) Algoritmi, joka laskee kahden kokonaisluvun välisen jakojäännöksen käyttämättä lainkaan jakolaskuja Jaettava m, jakaja n Vähennetään luku
Algoritmit 1. Demot Timo Männikkö
Algoritmit 1 Demot 2 7.-8.2.2018 Timo Männikkö Tehtävä 1 (a) Ei-rekursiivinen algoritmi: etsipienin(t, n) { pnn = t[0]; for (i = 1; i < n; i++) { pnn = min(pnn, t[i]); return pnn; Silmukka suoritetaan
Algoritmit 2. Luento 11 Ti Timo Männikkö
Algoritmit 2 Luento 11 Ti 24.4.2018 Timo Männikkö Luento 11 Rajoitehaku Kapsäkkiongelma Kauppamatkustajan ongelma Paikallinen etsintä Lyhin virittävä puu Vaihtoalgoritmit Algoritmit 2 Kevät 2018 Luento
Algoritmit 1. Demot Timo Männikkö
Algoritmit 1 Demot 2 1.-2.2.2017 Timo Männikkö Tehtävä 1 (a) Ei-rekursiivinen algoritmi: laskesumma(t, n) sum = t[0]; for (i = 1; i < n; i++) sum = sum + t[i]; return sum; Silmukka suoritetaan n 1 kertaa
Algoritmit 1. Luento 13 Ti 23.2.2016. Timo Männikkö
Algoritmit 1 Luento 13 Ti 23.2.2016 Timo Männikkö Luento 13 Suunnittelumenetelmät Taulukointi Kapsäkkiongelma Ahne menetelmä Verkon lyhimmät polut Dijkstran menetelmä Verkon lyhin virittävä puu Kruskalin
Lukion matematiikkakilpailun alkukilpailu 2015
Lukion matematiikkakilpailun alkukilpailu 015 Avoimen sarjan tehtävät ja niiden ratkaisuja 1. Olkoot a ja b peräkkäisiä kokonaislukuja, c = ab ja d = a + b + c. a) Osoita, että d on kokonaisluku. b) Mitä
Algoritmit 2. Luento 12 Ke Timo Männikkö
Algoritmit 2 Luento 12 Ke 26.4.2017 Timo Männikkö Luento 12 Rajoitehaku Kauppamatkustajan ongelma Lyhin virittävä puu Paikallinen etsintä Vaihtoalgoritmit Geneettiset algoritmit Simuloitu jäähdytys Algoritmit
Algoritmit 2. Luento 2 To Timo Männikkö
Algoritmit 2 Luento 2 To 14.3.2019 Timo Männikkö Luento 2 Tietorakenteet Lineaarinen lista, binääripuu Prioriteettijono Kekorakenne Keko-operaatiot Keon toteutus taulukolla Algoritmit 2 Kevät 2019 Luento
811312A Tietorakenteet ja algoritmit, 2014-2015, Harjoitus 7, ratkaisu
832A Tietorakenteet ja algoritmit, 204-205, Harjoitus 7, ratkaisu Hajota ja hallitse-menetelmä: Tehtävä 7.. Muodosta hajota ja hallitse-menetelmää käyttäen algoritmi TULOSTA_PUU_LASKEVA, joka tulostaa
Algoritmit 1. Luento 12 Ke Timo Männikkö
Algoritmit 1 Luento 12 Ke 15.2.2017 Timo Männikkö Luento 12 Pikalajittelu Pikalajittelun vaativuus Osittamisen tasapainoisuus Lajittelumenetelmien vaativuus Laskentalajittelu Lokerolajittelu Kantalukulajittelu
815338A Ohjelmointikielten periaatteet Harjoitus 2 vastaukset
815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 2 vastaukset Harjoituksen aiheena on BNF-merkinnän käyttö ja yhteys rekursiivisesti etenevään jäsentäjään. Tehtävä 1. Mitkä ilmaukset seuraava
811312A Tietorakenteet ja algoritmit, 2015-2016. VI Algoritmien suunnitteluparadigmoja
811312A Tietorakenteet ja algoritmit, 2015-2016 VI Algoritmien suunnitteluparadigmoja Sisältö 1. Hajota ja hallitse-menetelmä 2. Dynaaminen taulukointi 3. Ahneet algoritmit 4. Peruuttavat algoritmit 811312A
Vasen johto S AB ab ab esittää jäsennyspuun kasvattamista vasemmalta alkaen:
Vasen johto S AB ab ab esittää jäsennyspuun kasvattamista vasemmalta alkaen: S A S B Samaan jäsennyspuuhun päästään myös johdolla S AB Ab ab: S A S B Yhteen jäsennyspuuhun liittyy aina tasan yksi vasen
Algoritmit 2. Luento 2 Ke Timo Männikkö
Algoritmit 2 Luento 2 Ke 15.3.2017 Timo Männikkö Luento 2 Tietorakenteet Lineaarinen lista, binääripuu Prioriteettijono Kekorakenne Keko-operaatiot Keon toteutus taulukolla Algoritmit 2 Kevät 2017 Luento
Algoritmit 2. Luento 13 Ti Timo Männikkö
Algoritmit 2 Luento 13 Ti 2.5.2017 Timo Männikkö Luento 13 Merkkijonon sovitus Horspoolin algoritmi Laskennallinen vaativuus Päätösongelmat Epädeterministinen algoritmi Vaativuusluokat NP-täydellisyys
Algoritmit 1. Luento 12 Ti Timo Männikkö
Algoritmit 1 Luento 12 Ti 19.2.2019 Timo Männikkö Luento 12 Osittamisen tasapainoisuus Pikalajittelun vaativuus Lajittelumenetelmien vaativuus Laskentalajittelu Lokerolajittelu Kantalukulajittelu Algoritmit
Algoritmit 2. Luento 3 Ti Timo Männikkö
Algoritmit 2 Luento 3 Ti 21.3.2017 Timo Männikkö Luento 3 Järjestäminen eli lajittelu Kekorakenne Kekolajittelu Hajautus Yhteentörmäysten käsittely Ketjutus Algoritmit 2 Kevät 2017 Luento 3 Ti 21.3.2017
Algoritmit 2. Luento 3 Ti Timo Männikkö
Algoritmit 2 Luento 3 Ti 20.3.2018 Timo Männikkö Luento 3 Järjestäminen eli lajittelu Kekorakenne Kekolajittelu Hajautus Yhteentörmäysten käsittely Ketjutus Algoritmit 2 Kevät 2018 Luento 3 Ti 20.3.2018
10. Painotetut graafit
10. Painotetut graafit Esiintyy monesti sovelluksia, joita on kätevä esittää graafeina. Tällaisia ovat esim. tietoverkko tai maantieverkko. Näihin liittyy erinäisiä tekijöitä. Tietoverkkoja käytettäessä
Algoritmit 2. Luento 13 Ti Timo Männikkö
Algoritmit 2 Luento 13 Ti 8.5.2018 Timo Männikkö Luento 13 Laskennallinen vaativuus Päätösongelmat Epädeterministinen algoritmi Vaativuusluokat NP-täydellisyys Kertaus ja tenttivinkit Algoritmit 2 Kevät
58131 Tietorakenteet ja algoritmit (kevät 2014) Uusinta- ja erilliskoe, , vastauksia
58131 Tietorakenteet ja algoritmit (kevät 2014) Uusinta- ja erilliskoe, 10..2014, vastauksia 1. [9 pistettä] (a) Todistetaan 2n 2 + n + 5 = O(n 2 ): Kun n 1 on 2n 2 + n + 5 2n 2 + n 2 +5n 2 = 8n 2. Eli
Algoritmit 1. Luento 1 Ti Timo Männikkö
Algoritmit 1 Luento 1 Ti 10.1.2017 Timo Männikkö Luento 1 Algoritmi Algoritmin toteutus Ongelman ratkaiseminen Algoritmin tehokkuus Algoritmin suoritusaika Algoritmin analysointi Algoritmit 1 Kevät 2017
Syötteen ensimmäisellä rivillä on kokonaisluku n, testien määrä (1 n 10). Tämän jälkeen jokaisella seuraavalla rivillä on kokonaisluku x (0 x 1000).
A Summat Tehtäväsi on selvittää, monellako tavalla luvun n voi esittää summana a 2 + b 2 + c 2 + d 2. Kaikki luvut ovat ei-negatiivisia kokonaislukuja. Esimerkiksi jos n = 21, yksi tapa muodostaa summa
v 8 v 9 v 5 C v 3 v 4
Verkot Verkko on (äärellinen) matemaattinen malli, joka koostuu pisteistä ja pisteitä toisiinsa yhdistävistä viivoista. Jokainen viiva yhdistää kaksi pistettä, jotka ovat viivan päätepisteitä. Esimerkiksi
Lukumäärän laskeminen 1/7 Sisältö ESITIEDOT:
Lukumäärän laskeminen 1/7 Sisältö Samapituisten merkkijonojen lukumäärä I Olkoon tehtävänä muodostaa annetuista merkeistä (olioista, alkioista) a 1,a 2,a 3,..., a n jonoja, joissa on p kappaletta merkkejä.
Malliratkaisut Demot
Malliratkaisut Demot 4 3.4.017 Tehtävä 1 Tarkastellaan harjoituksen 1 nopeimman reitin ongelmaa ja etsitään sille lyhin virittävä puu käyttämällä kahta eri algoritmia. a) (Primin algoritmi) Lähtemällä
13 Lyhimmät painotetut polut
TIE-20100 Tietorakenteet ja algoritmit 297 13 Lyhimmät painotetut polut BFS löytää lyhimmän polun lähtösolmusta graafin saavutettaviin solmuihin. Se ei kuitenkaan enää suoriudu tehtävästä, jos kaarien
Algoritmit 2. Luento 14 To Timo Männikkö
Algoritmit 2 Luento 14 To 2.5.2019 Timo Männikkö Luento 14 Laskennallinen vaativuus Päätösongelmat Epädeterministinen algoritmi Vaativuusluokat NP-täydelliset ongelmat Kertaus ja tenttivinkit Algoritmit
Tekijä Pitkä matematiikka On osoitettava, että jana DE sivun AB kanssa yhdensuuntainen ja sen pituus on 4 5
Tekijä Pitkä matematiikka 6..06 8 On osoitettava, että jana DE sivun AB kanssa yhdensuuntainen ja sen pituus on 5 sivun AB pituudesta. Pitää siis osoittaa, että DE = AB. 5 Muodostetaan vektori DE. DE =
ALGORITMIT 1 DEMOVASTAUKSET KEVÄT 2012
ALGORITMIT 1 DEMOVASTAUKSET KEVÄT 2012 1.1. (a) Jaettava m, jakaja n. Vähennetään luku n luvusta m niin kauan kuin m pysyy ei-negatiivisena. Jos jäljelle jää nolla, jaettava oli tasan jaollinen. int m,
Algoritmit 2. Luento 12 To Timo Männikkö
Algoritmit 2 Luento 12 To 3.5.2018 Timo Männikkö Luento 12 Geneettiset algoritmit Simuloitu jäähdytys Merkkijonon sovitus Horspoolin algoritmi Algoritmit 2 Kevät 2018 Luento 12 To 3.5.2018 2/35 Algoritmien
Algoritmit 2. Demot Timo Männikkö
Algoritmit 2 Demot 2 3.-4.4.2019 Timo Männikkö Tehtävä 1 Avoin osoitteenmuodostus: Hajautustaulukko t (koko m) Erikoisarvot VAPAA ja POISTETTU Hajautusfunktio h(k,i) Operaatiot: lisaa etsi poista Algoritmit
10. Painotetut graafit
10. Painotetut graafit Esiintyy monesti sovelluksia, joita on kätevä esittää graafeina. Tällaisia ovat esim. tietoverkko tai maantieverkko. Näihin liittyy erinäisiä tekijöitä. Tietoverkkoja käytettäessä
Algoritmit 1. Luento 2 Ke Timo Männikkö
Algoritmit 1 Luento 2 Ke 11.1.2017 Timo Männikkö Luento 2 Algoritmin esitys Algoritmien analysointi Suoritusaika Asymptoottinen kertaluokka Peruskertaluokkia NP-täydelliset ongelmat Algoritmit 1 Kevät
f(n) = Ω(g(n)) jos ja vain jos g(n) = O(f(n))
Määritelmä: on O(g(n)), jos on olemassa vakioarvot n 0 > 0 ja c > 0 siten, että c g(n) kun n > n 0 O eli iso-o tai ordo ilmaisee asymptoottisen ylärajan resurssivaatimusten kasvun suuruusluokalle Samankaltaisia
8. Kieliopit ja kielet
8. Kieliopit ja kielet Suomen kielen sanoja voidaan yhdistellä monella eri tavalla. Kielioppi määrää sen, milloin sanojen yhdistely antaa oikein muodostetun lauseen. "Mies räpyttää siipiään" on kieliopillisesti
4 Tehokkuus ja algoritmien suunnittelu
TIE-20100 Tietorakenteet ja algoritmit 52 4 Tehokkuus ja algoritmien suunnittelu Tässä luvussa pohditaan tehokkuuden käsitettä ja esitellään kurssilla käytetty kertaluokkanotaatio, jolla kuvataan algoritmin
Tehtävä 2: Loppuosataulukko
Tehtävä 2: Loppuosataulukko Tutustu tarkoin seuraavaan tekstiin ja vastaa sitä hyväksi käyttäen tehtävän loppuosassa esitettyihin viiteen kysymykseen. Annetun merkkijonon (ns. hahmo) esiintymän haku pidemmästä
TKT20001 Tietorakenteet ja algoritmit Erilliskoe , malliratkaisut (Jyrki Kivinen)
TKT0001 Tietorakenteet ja algoritmit Erilliskoe 5.1.01, malliratkaisut (Jyrki Kivinen) 1. [1 pistettä] (a) Esitä algoritmi, joka poistaa kahteen suuntaan linkitetystä järjestämättömästä tunnussolmullisesta
Algoritmit 1. Luento 8 Ke Timo Männikkö
Algoritmit 1 Luento 8 Ke 1.2.2017 Timo Männikkö Luento 8 Järjestetty binääripuu Solmujen läpikäynti Binääripuun korkeus Binääripuun tasapainottaminen Graafit ja verkot Verkon lyhimmät polut Fordin ja Fulkersonin
VETUMA-PALVELUN PALVELINVARMENTEET
Sivu 1 Versio: 3.4, 19.12.2014 VETUMA-PALVELUN PALVELINVARMENTEET 1 (18) Sivu 2 Versio: 3.4, 19.12.2014 Sisällysluettelo 1. Johdanto... 3 2. Testiympäristö... 3 2.1 Vetuma-palvelun testiympäristö... 3
0, niin vektorit eivät ole kohtisuorassa toisiaan vastaan.
Tekijä Pitkä matematiikka 4 9.1.016 168 a) Lasketaan vektorien a ja b pistetulo. a b = (3i + 5 j) (7i 3 j) = 3 7 + 5 ( 3) = 1 15 = 6 Koska pistetulo a b 0, niin vektorit eivät ole kohtisuorassa toisiaan
j n j a b a c a d b c c d m j b a c a d a c b d c c j
TEKNILLINEN KORKEAKOULU Tietoliikenne- ja tietoverkkotekniikan laitos S-38.115 Liikenneteorian perusteet, Kevät 2008 Demonstraatiot Luento 12 29.2.2008 D12/1 Tarkastellaan verkkoa, jossa on solmua ja linkkiä.
2 Sanoja järjestävän funktion ohjelmoiminen
1 Tämän dokumentin tarkoitus Tämä dokumentti ei kuulu millään tavoin tenttialueeseen, enkä ota vastuuta sen lukemisen aiheuttamista vahingoista. Tässä dokumentissa esitetään esimerkin kautta, miten matematiikan
4. Tehtävässä halutaan todistaa seuraava ongelma ratkeamattomaksi:
T-79.148 Kevät 2004 Tietojenkäsittelyteorian perusteet Harjoitus 12 Demonstraatiotehtävien ratkaisut 4. Tehtävässä halutaan todistaa seuraava ongelma ratkeamattomaksi: Hyväksyykö annettu Turingin kone
ITKP102 Ohjelmointi 1 (6 op)
ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 7. huhtikuuta 2017 Vastaa kaikkiin tehtäviin. Tee jokainen tehtävä erilliselle konseptiarkille. Kirjoittamasi luokat, funktiot ja aliohjelmat
ARKISTOLUETTELO A MERKINTÄKIRJAT. Aa Luokkien päiväkirjat. sis. 5 sidosta. 1 kansio. Aa:1 1924-1926. Päiväkirjoja. Päiväkirja. 4 sidosta.
ARKISTOLUETTELO Kunta/Kuntainliitto Pääsarjan nimike Valkeakosken kaupunki A-E, G-J Arkistonmuodostaja/viranomainen Valkeakosken yhteiskoulu Hyllyn numero 146-153 Lukumäärä ja laatu Arkistotunnus Asiakirjakokonaisuuden
9 Erilaisia tapoja järjestää
TIE-20100 Tietorakenteet ja algoritmit 198 9 Erilaisia tapoja järjestää Käsitellään seuraavaksi järjestämisalgoritmeja, jotka perustuvat muihin kuin vertailuun alkioiden oikean järjestyksen saamiseksi.
Nopea kertolasku, Karatsuban algoritmi
Nopea kertolasku, Karatsuban algoritmi Mikko Männikkö 16.8.2004 Lähde: ((Gathen and Gerhard 1999) luku II.8) Esityksen kulku Algoritmien analysointia (1), (2), (3), (4) Klassinen kertolasku Parempi tapa
1.4 Funktioiden kertaluokat
1.4 Funktioiden kertaluokat f on kertaluokkaa O(g), merk. f = O(g), jos joillain c > 0, m N pätee f(n) cg(n) aina kun n m f on samaa kertaluokkaa kuin g, merk. f = Θ(g), jos joillain a, b > 0, m N pätee
Lineaarialgebra ja matriisilaskenta I
Lineaarialgebra ja matriisilaskenta I 29.5.2013 HY / Avoin yliopisto Jokke Häsä, 1/26 Kertausta: Kanta Määritelmä Oletetaan, että w 1, w 2,..., w k W. Vektorijono ( w 1, w 2,..., w k ) on aliavaruuden
Aa lähtevien kirjeiden diaari. Saapuvien ja lähtevien kirjeiden diaari. Ab Saapuneiden kirjeiden diaari. Saapuneiden kirjeiden diaari
ARKISTOLUETTELO Kunta/Kuntainliitto Pääsarjan nimike Sääksmäen kunta A-D Arkistonmuodostaja/viranomainen v.1973 lähtien Valkeakosken Terveysltk. - Terveydenhoitolautakunta asiakirjat Hyllyn numero 921-925
58131 Tietorakenteet Erilliskoe , ratkaisuja (Jyrki Kivinen)
58131 Tietorakenteet Erilliskoe 11.11.2008, ratkaisuja (Jyrki Kivinen) 1. (a) Koska halutaan DELETEMAX mahdollisimman nopeaksi, käytetään järjestettyä linkitettyä listaa, jossa suurin alkio on listan kärjessä.
Algoritmit 1. Luento 14 Ke 25.2.2015. Timo Männikkö
Algoritmit 1 Luento 14 Ke 25.2.2015 Timo Männikkö Luento 14 Heuristiset menetelmät Heuristiikkoja kapsäkkiongelmalle Kauppamatkustajan ongelma Lähimmän naapurin menetelmä Kertaus ja tenttivinkit Algoritmit
Johdatus graafiteoriaan
Johdatus graafiteoriaan Syksy 2017 Lauri Hella Tampereen yliopisto Luonnontieteiden tiedekunta 126 Luku 3 Puut 3.1 Puu 3.2 Virittävä puu 3.3 Virittävän puun konstruointi 3.4 Minimaalinen virittävä puu
Algoritmit 2. Luento 10 To Timo Männikkö
Algoritmit 2 Luento 10 To 19.4.2018 Timo Männikkö Luento 10 Peruutusmenetelmä Osajoukon summa Verkon 3-väritys Pelipuut Pelipuun läpikäynti Algoritmit 2 Kevät 2018 Luento 10 To 19.4.2018 2/34 Algoritmien
Matikkapaja keskiviikkoisin klo Lineaarialgebra (muut ko) p. 1/81
Matikkapaja keskiviikkoisin klo 14-16 Lineaarialgebra (muut ko) p. 1/81 Lineaarialgebra (muut ko) p. 2/81 Operaatiot Vektoreille u = (u 1,u 2 ) ja v = (v 1,v 2 ) Yhteenlasku: u+v = (u 1 +v 1,u 2 +v 2 )
Äärettömät sanat. Aleksi Saarela. Matematiikan ja tilastotieteen laitos ja FUNDIM-keskus, Turun yliopisto. A. Saarela (TY) Äärettömät sanat 1 / 28
Äärettömät sanat Aleksi Saarela Matematiikan ja tilastotieteen laitos ja FUNDIM-keskus, Turun yliopisto A. Saarela (TY) Äärettömät sanat 1 / 28 1 Sanojen kombinatoriikan taustaa 2 Esimerkkejä äärettömistä
Algoritmit 1. Luento 3 Ti Timo Männikkö
Algoritmit 1 Luento 3 Ti 17.1.2017 Timo Männikkö Luento 3 Algoritmin analysointi Rekursio Lomituslajittelu Aikavaativuus Tietorakenteet Pino Algoritmit 1 Kevät 2017 Luento 3 Ti 17.1.2017 2/27 Algoritmien
Algoritmit 2. Luento 11 Ti Timo Männikkö
Algoritmit 2 Luento 11 Ti 25.4.2017 Timo Männikkö Luento 11 Peruutusmenetelmä Osajoukon summa Pelipuut Pelipuun läpikäynti Rajoitehaku Kapsäkkiongelma Algoritmit 2 Kevät 2017 Luento 11 Ti 25.4.2017 2/29
Matikkapaja keskiviikkoisin klo Lineaarialgebra (muut ko) p. 1/210
Matikkapaja keskiviikkoisin klo 14-16 Lineaarialgebra (muut ko) p. 1/210 Lineaarialgebra (muut ko) p. 2/210 Operaatiot Vektoreille u = (u 1,u 2 ) ja v = (v 1,v 2 ) Yhteenlasku: u+v = (u 1 +v 1,u 2 +v 2
811120P Diskreetit rakenteet
811120P Diskreetit rakenteet 2016-2017 1. Algoritmeista 1.1 Algoritmin käsite Algoritmi keskeinen laskennassa Määrittelee prosessin, joka suorittaa annetun tehtävän Esimerkiksi Nimien järjestäminen aakkosjärjestykseen
Oikeasta tosi-epätosi -väittämästä saa pisteen, ja hyvästä perustelusta toisen.
Tietorakenteet, kevät 2012 Kurssikoe 2, mallivastaukset 2. (a) Järjestämistä ei voi missään tilanteessa suorittaa nopeammin kuin ajassa Θ(n log n), missä n on järjestettävän taulukon pituus. Epätosi: Yleisessä
Algoritmi on periaatteellisella tasolla seuraava:
Algoritmi on periaatteellisella tasolla seuraava: Dijkstra(V, E, l, v 0 ): S := { v 0 } D[v 0 ] := 0 for v V S do D[v] := l(v 0, v) end for while S V do valitse v V S jolle D[v] on minimaalinen S := S
1 Erilaisia tapoja järjestää
TIE-20100 Tietorakenteet ja algoritmit 1 1 Erilaisia tapoja järjestää Käsitellään seuraavaksi järjestämisalgoritmeja, jotka perustuvat muihin kuin vertailuun alkioiden oikean järjestyksen saamiseksi. Lisäksi
Tietolan kansakoulun luokkapäiväkirjat. Ab Kirjastonhoidon päiväkirjat. Tietolan koulukirjaston hoidon päiväkirja
ARKISTOLUETTELO Kunta/Kuntainliitto Pääsarjan nimike Valkeakosken kaupunki A-E, G-H, M, U Arkistonmuodostaja/viranomainen Tietolan kansakoulu Hyllyn numero 91-93 Lukumäärä ja laatu Arkistotunnus Asiakirjakokonaisuuden
Lähetettyjen ja saapuneiden kirjeiden diaari. Lähetettyjen ja saapuneiden kirjeiden diaari. Lähetettyjen kirjeiden diaari
ARKISTOLUETTELO Kunta/Kuntainliitto Pääsarjan nimike Valkeakosken kaupunki A-E, G-I Arkistonmuodostaja/viranomainen Tarttilan kansakoulu Hyllyn numero 89-90 Lukumäärä ja laatu Arkistotunnus Asiakirjakokonaisuuden
Lineaarialgebra (muut ko)
Lineaarialgebra (muut ko) p. 1/103 Lineaarialgebra (muut ko) Tero Laihonen Lineaarialgebra (muut ko) p. 2/103 Operaatiot Vektoreille u = (u 1,u 2 ) ja v = (v 1,v 2 ) Yhteenlasku: u+v = (u 1 +v 1,u 2 +v
c) Vektorit ovat samat, jos ne ovat samansuuntaiset ja yhtä pitkät. Vektorin a kanssa sama vektori on vektori d.
Tekijä Pitkä matematiikka 4 9.12.2016 20 a) Vektorin a kanssa samansuuntaisia ovat vektorit b ja d. b) Vektorit ovat erisuuntaiset, jos ne eivät ole yhdensuuntaiset (samansuuntaiset tai vastakkaissuuntaiset).
Algoritmit 2. Luento 1 Ti Timo Männikkö
Algoritmit 2 Luento 1 Ti 14.3.2017 Timo Männikkö Luento 1 Algoritmi Algoritmin valinta Algoritmin analysointi Algoritmin suoritusaika Peruskertaluokkia Kertaluokkamerkinnät Kertaluokkien ominaisuuksia
A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.
Esimerkki otteluvoiton todennäköisyys A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä. Yksittäisessä pelissä A voittaa todennäköisyydellä p ja B todennäköisyydellä q =
Formalisoimme nyt edellä kuvatun laskennan.
Formalisoimme nyt edellä kuvatun laskennan. Jos M = (Q, Σ, δ, q, F ) on äärellinen automaatti ja w = w... w n on n merkkiä pitkä aakkoston Σ merkkijono, niin automaatti M hyväksyy merkkijonon w, jos on
811120P Diskreetit rakenteet
811120P Diskreetit rakenteet 2018-2019 1. Algoritmeista 1.1 Algoritmin käsite Algoritmi keskeinen laskennassa Määrittelee prosessin, joka suorittaa annetun tehtävän Esimerkiksi Nimien järjestäminen aakkosjärjestykseen
3x + y + 2z = 5 e) 2x + 3y 2z = 3 x 2y + 4z = 1. x + y 2z + u + 3v = 1 b) 2x y + 2z + 2u + 6v = 2 3x + 2y 4z 3u 9v = 3. { 2x y = k 4x + 2y = h
HARJOITUSTEHTÄVIÄ 1. Anna seuraavien yhtälöryhmien kerroinmatriisit ja täydennetyt kerroinmatriisit sekä ratkaise yhtälöryhmät Gaussin eliminointimenetelmällä. { 2x + y = 11 2x y = 5 2x y + z = 2 a) b)
Juuri 4 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty Kertaus. b) B = (3, 0, 5) K2. 8 ( 1)
Kertaus K1. a) OA i k b) B = (, 0, 5) K. K. a) AB (6 ( )) i () ( ( 7)) k 8i 4k AB 8 ( 1) 4 64116 819 b) 1 1 AB( ( 1)) i 1 i 4 AB ( ) ( 4) 416 0 45 5 K4. a) AB AO OB OA OB ( i ) i i i 5i b) Pisteen A paikkavektori
Matriisipotenssi. Koska matriisikertolasku on liitännäinen (sulkuja ei tarvita; ks. lause 2), voidaan asettaa seuraava määritelmä: ja A 0 = I n.
Matriisipotenssi Koska matriisikertolasku on liitännäinen (sulkuja ei tarvita; ks. lause 2), voidaan asettaa seuraava määritelmä: Määritelmä Oletetaan, että A on n n -matriisi (siis neliömatriisi) ja k
T Syksy 2002 Tietojenkäsittelyteorian perusteet Harjoitus 8 Demonstraatiotehtävien ratkaisut
T-79.148 Syksy 2002 Tietojenkäsittelyteorian perusteet Harjoitus 8 Demonstraatiotehtävien ratkaisut 4. Tehtävä: Laadi algoritmi, joka testaa onko annetun yhteydettömän kieliopin G = V, Σ, P, S tuottama
LAUSEKKEET JA NIIDEN MUUNTAMINEN
LAUSEKKEET JA NIIDEN MUUNTAMINEN 1 LUKULAUSEKKEITA Ratkaise seuraava tehtävä: Retkeilijät ajoivat kahden tunnin ajan polkupyörällä maantietä pitkin 16 km/h nopeudella, ja sitten vielä kävelivät metsäpolkua
Luku 6. Dynaaminen ohjelmointi. 6.1 Funktion muisti
Luku 6 Dynaaminen ohjelmointi Dynaamisessa ohjelmoinnissa on ideana jakaa ongelman ratkaisu pienempiin osaongelmiin, jotka voidaan ratkaista toisistaan riippumattomasti. Jokaisen osaongelman ratkaisu tallennetaan
Tekijä Pitkä matematiikka b) Kuvasta nähdään, että b = i 4 j. c) Käytetään a- ja b-kohtien tuloksia ja muokataan lauseketta.
Tekijä Pitkä matematiikka 4 9.1.016 79 a) Kuvasta nähdään, että a = 3i + j. b) Kuvasta nähdään, että b = i 4 j. c) Käytetään a- ja b-kohtien tuloksia ja muokataan lauseketta. 5a b = 5(3i + j) ( i 4 j)
811312A Tietorakenteet ja algoritmit, , Harjoitus 3, Ratkaisu
811312A Tietorakenteet ja algoritmit, 2018-2019, Harjoitus 3, Ratkaisu Harjoituksessa käsitellään algoritmien aikakompleksisuutta. Tehtävä 3.1 Kuvitteelliset algoritmit A ja B lajittelevat syötteenään
Tietorakenteet ja algoritmit. Kertaus. Ari Korhonen
Tietorakenteet ja algoritmit Kertaus Ari Korhonen 1.12.2015 Tietorakenteet ja algoritmit - syksy 2015 1 Presemosta: 12. Kertaus» Mitkä tekijät, miten ja miksi vaiku1avat algoritmien nopeuteen» Rekursiohistoriapuut
Algoritmit 2. Luento 13 Ti Timo Männikkö
Algoritmit 2 Luento 13 Ti 30.4.2019 Timo Männikkö Luento 13 Simuloitu jäähdytys Merkkijonon sovitus Horspoolin algoritmi Ositus ja rekursio Rekursion toteutus Algoritmit 2 Kevät 2019 Luento 13 Ti 30.4.2019
Rajoittamattomat kieliopit
Rajoittamattomat kieliopit Ohjelmoinnin ja laskennan perusmalleista muistetaan, että kieli voidaan kuvata (esim.) kieliopilla joka tuottaa sen, tai automaatilla joka tunnistaa sen. säännölliset lausekkeet
8. Kieliopit ja kielet 1 / 22
8. Kieliopit ja kielet 1 / 22 Luonnollinen kieli Suomen kielen sanoja voidaan yhdistellä monella eri tavalla. Kielioppi määrää sen, milloin sanojen yhdistely antaa oikein muodostetun lauseen. "Mies räpyttää
Luonnolliset vs. muodolliset kielet
Luonnolliset vs. muodolliset kielet Luonnollisia kieliä ovat esim. 1. englanti, 2. suomi, 3. ranska. Muodollisia kieliä ovat esim. 1. lauselogiikan kieli (ilmaisut p, p q jne.), 2. C++, FORTRAN, 3. bittijonokokoelma
Tekijä Pitkä matematiikka
K1 Tekijä Pitkä matematiikka 5 7..017 a) 1 1 + 1 = 4 + 1 = 3 = 3 4 4 4 4 4 4 b) 1 1 1 = 4 6 3 = 5 = 5 3 4 1 1 1 1 1 K a) Koska 3 = 9 < 10, niin 3 10 < 0. 3 10 = (3 10 ) = 10 3 b) Koska π 3,14, niin π