9. Strategieën en oplossingsmethoden

Maat: px
Weergave met pagina beginnen:

Download "9. Strategieën en oplossingsmethoden"

Transcriptie

1 9. Strategieën en oplossingsmethoden In dit hoofdstuk wordt nog even terug gekeken naar alle voorgaande hoofdstukken. We herhalen globaal de structuren en geven enkele richtlijnen voor het ontwerpen van algoritmen (geen regels, want die bestaan niet). Ook worden er nog enkele belangrijke strategieën behandeld. In de vorige hoofdstukken zijn een aantal oplossingsmethoden behandeld. Het is echter nog onduidelijk wanneer je welke methode moet gebruiken. Wanneer moet ik nu recursie gebruiken en wanneer niet, wanneer moet ik naar een vuistregel zoeken, wanneer moet ik met lussen werken? Dit zijn vragen waar je nu nog geen duidelijk antwoord op gekregen hebt. Het is ook zeer moeilijk om hier een antwoord op te geven, want voor elke regel die je verzint zijn tientallen voorbeelden te noemen die het tegendeel bewijzen. Toch zullen we een poging wagen om licht in de duisternis brengen. 9.1 Enkele tips Om te beginnen moet je, voordat je een algoritme gaat maken, je verdiept hebben in het probleem. Enkele tips die je hierbij kunt gebruiken zijn: Formuleer het probleem duidelijk en begrijp het volkomen. Begrijpen waarom een probleem een probleem is vormt het begin van het vinden van een oplossing. Maak verborgen regels en gegevens zichtbaar. Soms zijn er bij een bepaald probleem een aantal gegevens die als bekend beschouwd worden. Probeer inzicht in dit soort gegevens te krijgen. Verkrijg inzicht in het probleem.vaak kun je door het probleem te tekenen of op een andere manier te visualiseren een goed inzicht krijgen in het probleem. Een goed voorbeeld hiervan is de spelboom van het wespenspel (hoofdstuk 8). Bij dit spel was een Toestand-actie-diagram getekend. Dit is een diagram waarin bij elke toestand wordt nagegaan welke acties er ondernomen kunnen worden. Hier is bijvoorbeeld de begintoestand. De acties die wesp1 kan ondernemen zijn: 2 eitjes in pop1, 2 eitjes in pop2 of 1 eitje in pop1 en 1 eitje in pop2. Deze drie acties zorgen ervoor dat er drie nieuwe toestanden ontstaan. Vanuit deze toestanden kan je weer 3 acties ondernemen enz... Ook kan je het probleem gewoon enkele keren na-spelen om inzicht te krijgen in alle mogelijkheden en de problemen.

2 Pagina 9-2 Verwijder overbodig detail. Verdeel en heers: Probeer het probleem in subproblemen te verdelen en los deze subproblemen zoveel mogelijk op. Combineer de subproblemen en verkrijg zo je antwoord. Van achter naar voren werken (van de oplossing af terugredeneren). Vaak weet je van een eenvoudig voorbeeld wat het antwoord moet zijn en kan je voor dit voorbeeld terugredeneren wat de werkwijze moet zijn. Dit verhoogt soms het inzicht en kan leiden tot een snelle oplossing. Nadat je hebt nagedacht over de structuur van je probleem en de structuur van je gegevens, kan je na gaan denken over de structuur van je algoritme. We zullen in de komende paragrafen enkele richtlijnen geven die je kunnen helpen bij het maken van algoritmen. Pas wel goed op, de richtlijnen zijn globaal en er zijn dan ook zeer veel uitzonderingen. 9.2 Zoek en Doorloop De enkele lus Voorbeeld: Wanneer je je informatie hebt opgeslagen in vectoren en je wilt een bewerking hiermee doen waarbij alle elementen binnen de vector 1 maal gebruikt worden, dan is het raadzaam om dit binnen een lus te doen met een teller. Van een rij ('Vet' uit paragraaf 3.6) willen we weten welk getal het meeste voorkomt en hoe vaak het voorkomt. Vet WORDT 25,40,,25,60,55,,25,,,34,45 PROGRAM VOORKOM PARAM OUTPUT {geeft van de rij Vet welk getal het meest voorkomt en hoe vaak} N := LENGTE PARAM { het aantal elementen } teller := 1 { een teller } aantal := 0 { het aantal maal van voorkomen} tal := SOM PARAM[teller] IS PARAM aantal KLEINER DAN tal aantal := tal { aantal wordt nieuwe frekwentie} nummer := teller { en in nummer komt de index te staan} teller := teller + 1 { ga naar het volgend element uit Vet } teller IS N { controleer of alle elementen geweest zijn } OUTPUT := nummer, aantal

3 Pagina 9-3 Ook bij problemen waarbij een bewerking een aantal keer herhaald moet worden is het handig om een enkele lus te gebruiken. Dit komt voor bij o.a. discrete tijd modellen en het berekenen en tekenen van functies. Eigenlijk is het bovenstaande voorbeeld niet helemaal eerlijk. In de enkele lus zit nog een lus verborgen. Om dat in te zien moet je eens precies nagaan wat er in de zevende regel gebeurt. Daarvoor zijn twee dingen nodig. In de eerste plaats moet je weten wat de module SOM doet. Dat kun je naslaan in hoofdstuk 11. In de tweede plaats moet je weten wat het preciese resultaat is van PARAM[teller] IS PARAM. Zie je de verborgen lus nu? De dubbele lus Voorbeeld: Een dubbele lus wordt gebruikt bij gegevens die opgeslagen zijn in een vector, waarbij de gegevens binnen de vector meerdere keren vergeleken moeten worden. Ook bij matrices worden vaak 2 lussen gebruikt. In buitenste lus wordt dan het aantal rijen bij gehouden terwijl in de binnenste lus de kolommen worden bijgehouden. Het is misschien een beetje saai, maar om het verschil duidelijk te maken met de enkele vector, zullen we in dit voorbeeld een matrix maken waarbij elke rij verschillende plaatsen in het waddengebied zijn. De kolommen zijn de verschillende zeehonden. z.h.1 z.h. 2 z.h. 3 z.h. 4 Plaats Plaats Plaats we nu willen weten hoe vaak een bepaald gewicht voorkomt, dan moet het programma er als volgt uitzien. Vet WORDT 3 4 ARRAY 25,40,,25,60,55,,25,,,34,45 PROGRAM VOORKOMMATRIX PARAM OUTPUT {geeft van de matrix Vet hoe vaak getal PARAM voorkomt} N := LENGTE PARAM R := N1] { het aantal rijen } K := N[2] { het aantal kolommen} RijTel := 1 { een teller voor de rijen } KolTel:= 1 { een teller voor de kolommen } aantal := 0 { het aantal maal van voorkomen} LEES gew { Geef het bepaalde gewicht } PARAM[RijTel;KolTel] IS_GELIJK gew { verhoog aantal als gewicht in Vet voorkomt... }

4 Pagina 9-4 aantal := aantal + 1 KolTel := KolTel + 1 { ga naar de volgende kolom in Vet } KolTel IS K { controleer of alle kolommen geweest zijn } RijTel := RijTel + 1 { ga naar volgende rij } RijTel IS R { controleer of alle rijen geweest zijn } OUTPUT := aantal 9.3 Verdeel en heers Voorbeeld: Vaak kunnen we een probleem oplossen door het op te delen in kleinere problemen van dezelfde soort, die op hun beurt ook weer opgedeeld kunnen worden. Later kan dan nadat alle deelproblemen opgelost zijn het uiteindelijke antwoord gegeven worden. Voor dit soort problemen wordt vaak recursie gebruikt. Toch moet je oppassen met het gebruik van recursie. Vaak zijn oplossingen met een lusstructuur beter te overzien en beter uit te voeren. We kunnen in de vector met VET op een recursieve manier het minimum vinden. Vet WORDT 25,40,,25,60,55,,25,,,34,45 PROGRAM MINIMUM PARAM OUTPUT { geeft het minimum van VECTOR } vector:=param lengte:=lengte vector lengte GROTER DAN1 lengte_1 := RONDAF lengte GEDEELD 2 lengte_2 := lengte MIN lengte_1 V1 := vector[rij lengte_1] V2 := vector[lengte_1 +RIJ lengte_2] MIN1 := MINIMUM V1,lengte_1 MIN2 := MINIMUM V2,lengte_2 MIN1 KLEINER DAN MIN2 OUTPUT := MIN1 Anders OUTPUT := MIN2 Anders OUTPUT := VECTOR Hier wordt het minimum van een vector opgedeeld in het vinden van het minimum van de eerste helft van de vector en het vinden van het minimum van de tweede helft. Het minimum is dan het kleinste getal van deze twee minima.

5 Dit kan ook met een lus opgelost worden: PROGRAM MINIMUM PARAM OUTPUT { Geeft het minimum van VECTOR } vector:=param lengte:=lengte vector M := vector[1] Teller := 1 M KLEINER DAN vector[teller] M := vector[teller] Teller := Teller + 1 Teller IS lengte PLUS 1 OUTPUT := M Merk 2 dingen op. Pagina Een uitzondering: We hebben voor een vectorbewerking toch een recursief algoritme gebruikt. 2. In dit geval de lus-methode toch wenselijker en overzichtelijker is, hoewel je het probleem kan opdelen in twee deelproblemen. Conclusie: Richtlijnen bestaan wel, regels echter niet. 9.4 Gulzige en Dynamische algoritmen voorbeeld: Olifanten in Afrika Probleemstelling: In Afrika leeft de afrikaanse olifant (Loxodonta africana africana). In het regenseizoen verblijft de olifant op hoger gelegen gebieden. In deze gebieden staan de favoriete voedselbronnen van de olifanten: bomen. Bomen bevatten veel koolhydraten en zijn vezelrijk. In het droge seizoen wordt het in deze hoger gelegen gebieden te droog. De olifant kan dan geen water meer drinken en de bomen leveren ook steeds minder voedsel. Dit is voor de olifanten het teken om naar lager gelegen gebieden te trekken. Nu beginnen de problemen pas echt. Tussen de hoge en lage gebieden leeft een groot aantal boeren. Deze stellen het niet op prijs wanneer een kudde olifanten hun achtertuin om komt ploegen. Om dit probleem te voorkomen wordt al een aantal jaar geprobeerd om het pad dat de olifanten nemen te begrijpen, zodat deze situatie veranderd kan worden. Enkele hypothesen voor het pad van de Olifant zijn: 1-Hij neemt de kortste weg naar de lager gelegen gebieden. 2-Hij neemt elke keer de weg naar de dichtstbijzijnde drinkplaats en gaat zo richting B. 3-Hij neemt de kortste weg, maar hij neemt in zijn route een aantal drinkplaatsen op.

6 Pagina 9-6 Gegeven is het volgende kaartje: Hypothese 1 is niet zo moeilijk te onderzoeken. Om te kijken of dit zo is trek je een lijn van A naar B, en je kijkt of de olifanten niet te veel van deze lijn afwijken. Hypothese 2 (hij neemt elke keer de weg naar de dichtstbijzijnde drinkplaats en gaat zo richting B) kunnen we oplossen met een zogenaamd gulzig algoritme (Greedy Algorithm). Dit algoritme zoekt in elke toestand wat de beste volgende stap is (zonder daarbij verder te kijken dan die volgende stap). In dit geval zou dat het volgende algoritme opleveren: dichtstbijzijnde nog niet bezochte waterplaats dichterbij dan B Ga naar dichtstbijzijnde nog niet bezochte waterplaats Anders Ga naar B Olifant in B. Het pad dat de olifant dan aflegt is in het volgende kaartje afgebeeld: De afstand die de olifant dan afgelegd heeft is: = 172 km. Merk op dat de afgelopen afstand nog meevalt. Door de kortste afstand te nemen naar de volgende waterplaats zou het kunnen zijn dat de olifanten een veel grotere omweg moeten nemen. Hypothese 3 (hij neemt de kortste weg, maar hij neemt in zijn route een aantal drinkplaatsen op) kunnen we oplossen met een dynamisch algoritme. Het probleem wordt daartoe eerst verdeeld in stadia. Per stadium gaat het algoritme gaat alle mogelijke oplossingen na, en onthoudt hoe goed de oplossing is. Nadat alle oplossingen per stadium gegenereerd zijn is de beste totale oplossing bekend. De oplossing kan dus met een verdeel A en heers methode bereikt worden. Immers de kortste afstand van A naar B is het minimum van (32 + de kortste afstand van knoop1 naar B) en (24 + de kortste afstand van knoop2 naar B) en voor knoop1 en knoop2 geldt het zelfde enz... Het verschil met de echte verdeel en heers benadering zit hem in het feit B A = Hoger gelegen plaats B = Lager gelegen plaats = Waterplaats = Begaanbaar pad met lengte B A

7 Pagina 9-7 dat we alle berekeningen van tussen afstanden op kunnen slaan in een tabel, met het doel om ze op te kunenn zoeken (ipv opnieuw uit te rekenen) als we ze later in het programma weer een keer nodig hebben. Merk op: het probleem van knoop1 en knoop2 zijn deelproblemen van het probleem voor A. PROGRAM KORTSTEPAD OUTPUT PARAM {Berekend de kortste afstand van knoop KNOOP naar het eindpunt B} ALBEZOCHTEKNOPEN:=PARAM[1] KNOOP:=PARAM[2] {Om te voorkomen dat het algoritme in cirkeltjes rond blijft gaan} ALBEZOCHTEKNOPEN := ALBEZOCHTEKNOPEN, KNOOP LENGTE := 1000 { Neem een extreem grote lengte } voor elk pad dat leidt naar buurknoop die niet in ALBEZOCHTEKNOPEN zit pad leidt naar B L := lengte van het pad naar B {Basis geval} Anders {Recursieve aanroep met buurknoop} L := lengte pad + KORTSTEPAD buurknoop PLAK ALBEZOCHTE- KNOPEN { de lengte korter dan de tot nu toe gevonden} L KLEINER DAN LENGTE {Maak lengte de kortste lengte} LENGTE := L OUTPUT := LENGTE Omdat het algoritme van te voren niet weet hoeveel buurknopen een knoop heeft moet in het recursieve algoritme een lus aangebracht worden. Deze stopt als alle buurknopen bestudeerd zijn. Het pad dat de olifanten dan lopen is in het plaatje hiernaast te zien: =14 {Geef kortste lengte terug}

8 Pagina 9-8

3. Structuren in de taal

3. Structuren in de taal 3. Structuren in de taal In dit hoofdstuk behandelen we de belangrijkst econtrolestructuren die in de algoritmiek gebruikt worden. Dit zijn o.a. de opeenvolging, selectie en lussen (herhaling). Vóór we

Nadere informatie

Uitwerking tentamen Algoritmiek 9 juli :00 13:00

Uitwerking tentamen Algoritmiek 9 juli :00 13:00 Uitwerking tentamen Algoritmiek 9 juli 0 0:00 :00. (N,M)-game a. Toestanden: Een geheel getal g, waarvoor geldt g N én wie er aan de beurt is (Tristan of Isolde) b. c. Acties: Het noemen van een geheel

Nadere informatie

Twaalfde college complexiteit. 11 mei 2012. Overzicht, MST

Twaalfde college complexiteit. 11 mei 2012. Overzicht, MST College 12 Twaalfde college complexiteit 11 mei 2012 Overzicht, MST 1 Agenda voor vandaag Minimum Opspannende Boom (minimum spanning tree) als voorbeeld van greedy algoritmen Overzicht: wat voor technieken

Nadere informatie

8. Complexiteit van algoritmen:

8. Complexiteit van algoritmen: 8. Complexiteit van algoritmen: Voorbeeld: Een gevaarlijk spel 1 Spelboom voor het wespenspel 2 8.1 Complexiteit 4 8.2 NP-problemen 6 8.3 De oplossing 7 8.4 Een vuistregel 8 In dit hoofdstuk wordt het

Nadere informatie

Dynamisch programmeren (H 10)

Dynamisch programmeren (H 10) Dynamisch programmeren (H 10) Dynamisch programmeren is een techniek voor het optimaal nemen van een rij van afhankelijke beslissingen Voorbeeld (10.1): Vind de kortste route van A naar J in het Stage

Nadere informatie

Uitwerking tentamen Algoritmiek 10 juni :00 13:00

Uitwerking tentamen Algoritmiek 10 juni :00 13:00 Uitwerking tentamen Algoritmiek 10 juni 2014 10:00 13:00 1. Dominono s a. Toestanden: n x n bord met in elk hokje een O, een X of een -. Hierbij is het aantal X gelijk aan het aantal O of hooguit één hoger.

Nadere informatie

Programmeermethoden. Recursie. week 11: november kosterswa/pm/

Programmeermethoden. Recursie. week 11: november kosterswa/pm/ Programmeermethoden Recursie week 11: 21 25 november 2016 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Pointers Derde programmeeropgave 1 Het spel Gomoku programmeren we als volgt: week 1: pointerpracticum,

Nadere informatie

Vierde college algoritmiek. 2 maart Toestand-actie-ruimte Exhaustive Search

Vierde college algoritmiek. 2 maart Toestand-actie-ruimte Exhaustive Search Algoritmiek 2018/Toestand-actie-ruimte Vierde college algoritmiek 2 maart 2018 Toestand-actie-ruimte Exhaustive Search 1 Algoritmiek 2018/Toestand-actie-ruimte Kannen Voorbeeld 4: Kannenprobleem We hebben

Nadere informatie

Opgave 1. (4 punten) Inleiding: Vraag: Hints: (maximaal 2 bonuspunten) Tentamen Algoritmiek voor Biologen

Opgave 1. (4 punten) Inleiding: Vraag: Hints: (maximaal 2 bonuspunten) Tentamen Algoritmiek voor Biologen Opgave 1. (4 punten) Elk jaar verliest een boom al z'n bladeren. Een boom begint op dag D met B bladeren. Op de eerste dag is voor elk blad dat aan de boom zit de kans op afvallen 0.03. Voor elke volgende

Nadere informatie

Tiende college algoritmiek. 26 april Gretige algoritmen

Tiende college algoritmiek. 26 april Gretige algoritmen Algoritmiek 01/10 College 10 Tiende college algoritmiek april 01 Gretige algoritmen 1 Algoritmiek 01/10 Muntenprobleem Gegeven onbeperkt veel munten van d 1,d,...d m eurocent, en een te betalen bedrag

Nadere informatie

Orderpicking. A-lympiade-voorronde-opdracht, 29 november 2002. De Wiskunde A-lympiade wordt gesponsord door Texas Instruments

Orderpicking. A-lympiade-voorronde-opdracht, 29 november 2002. De Wiskunde A-lympiade wordt gesponsord door Texas Instruments Orderpicking A-lympiade-voorronde-opdracht, 29 november 2002 e Wiskunde A-lympiade wordt gesponsord door Texas Instruments Inleiding In distributiecentra, eigenlijk grote magazijnen, liggen veel producten

Nadere informatie

Grafen. Indien de uitgraad van ieder punt 1 is, dan bevat de graaf een cykel. Indien de ingraad van ieder punt 1 is, dan bevat de graaf een cykel.

Grafen. Indien de uitgraad van ieder punt 1 is, dan bevat de graaf een cykel. Indien de ingraad van ieder punt 1 is, dan bevat de graaf een cykel. Grafen Grafen Een graaf bestaat uit een verzameling punten (ook wel knopen, of in het engels vertices genoemd) en een verzameling kanten (edges) of pijlen (arcs), waarbij de kanten en pijlen tussen twee

Nadere informatie

Tweede college algoritmiek. 12 februari Grafen en bomen

Tweede college algoritmiek. 12 februari Grafen en bomen College 2 Tweede college algoritmiek 12 februari 2016 Grafen en bomen 1 Grafen (herhaling) Een graaf G wordt gedefinieerd als een paar (V,E), waarbij V een eindige verzameling is van knopen (vertices)

Nadere informatie

Informatica: C# WPO 10

Informatica: C# WPO 10 Informatica: C# WPO 10 1. Inhoud 2D arrays, lijsten van arrays, NULL-values 2. Oefeningen Demo 1: Fill and print 2D array Demo 2: Fill and print list of array A: Matrix optelling A: Matrix * constante

Nadere informatie

Praktische toepassing van functies

Praktische toepassing van functies Excellerend Heemraadweg 21 2741 NC Waddinxveen 06 5115 97 46 richard@excellerend.nl BTW: NL0021459225 ABN/AMRO: NL72ABNA0536825491 KVK: 24389967 Praktische toepassing van functies De laatste twee functies

Nadere informatie

OEFENINGEN PYTHON REEKS 6

OEFENINGEN PYTHON REEKS 6 OEFENINGEN PYTHON REEKS 6 1. A) Schrijf een functie die een getal x en een getal y meekrijgt. De functie geeft de uitkomst van volgende bewerking als returnwaarde terug: x y x als x y x y y als x < y B)

Nadere informatie

ALGORITMIEK: antwoorden werkcollege 5

ALGORITMIEK: antwoorden werkcollege 5 ALGORITMIEK: antwoorden werkcollege 5 opgave 1. a. Brute force algoritme, direct afgeleid uit de observatie: loop v.l.n.r. door de tekst; als je een A tegenkomt op plek i (0 i < n 1), loop dan van daaruit

Nadere informatie

Netwerkdiagram voor een project. AON: Activities On Nodes - activiteiten op knooppunten

Netwerkdiagram voor een project. AON: Activities On Nodes - activiteiten op knooppunten Netwerkdiagram voor een project. AON: Activities On Nodes - activiteiten op knooppunten Opmerking vooraf. Een netwerk is een structuur die is opgebouwd met pijlen en knooppunten. Bij het opstellen van

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2016 2017, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele

Nadere informatie

recursie Hoofdstuk 5 Studeeraanwijzingen De studielast van deze leereenheid bedraagt circa 6 uur. Terminologie

recursie Hoofdstuk 5 Studeeraanwijzingen De studielast van deze leereenheid bedraagt circa 6 uur. Terminologie Hoofdstuk 5 Recursion I N T R O D U C T I E Veel methoden die we op een datastructuur aan kunnen roepen, zullen op een recursieve wijze geïmplementeerd worden. Recursie is een techniek waarbij een vraagstuk

Nadere informatie

Uitgebreide uitwerking Tentamen Complexiteit, juni 2017

Uitgebreide uitwerking Tentamen Complexiteit, juni 2017 Uitgebreide uitwerking Tentamen Complexiteit, juni 017 Opgave 1. a. Een pad van de wortel naar een blad stelt de serie achtereenvolgende arrayvergelijkingen voor die het algoritme doet op zekere invoer.

Nadere informatie

Hoofdstuk 7: Werken met arrays

Hoofdstuk 7: Werken met arrays Programmeren in Microsoft Visual Basic 6.0, lessenserie voor het voortgezet onderwijs HAVO/VWO David Lans, Emmauscollege, Marnix Gymnasium Rotterdam, januari 2004 Hoofdstuk 7: Werken met arrays 7.0 Leerdoel

Nadere informatie

Programmeermethoden. Recursie. Walter Kosters. week 11: november kosterswa/pm/

Programmeermethoden. Recursie. Walter Kosters. week 11: november kosterswa/pm/ Programmeermethoden Recursie Walter Kosters week 11: 20 24 november 2017 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Vierde programmeeropgave 1 De Grote getallen programmeren we als volgt: week 1: pointerpracticum,

Nadere informatie

ALGORITMIEK: antwoorden werkcollege 5

ALGORITMIEK: antwoorden werkcollege 5 1 ALGORITMIEK: antwoorden werkcollege 5 opgave 1. a. Brute force algoritme, direct afgeleid uit de observatie: loop v.l.n.r. door de tekst; als je een A tegenkomt op plek i (0 i < n 1), loop dan van daaruit

Nadere informatie

ALGORITMIEK: antwoorden werkcollege 5

ALGORITMIEK: antwoorden werkcollege 5 ALGORITMIEK: antwoorden werkcollege 5 opgave 1. a. Brute force algoritme, direct afgeleid uit de observatie: loop v.l.n.r. door de tekst; als je een A tegenkomt op plek i (0 i < n 1), loop dan van daaruit

Nadere informatie

De statespace van Small World Networks

De statespace van Small World Networks De statespace van Small World Networks Emiel Suilen, Daan van den Berg, Frank van Harmelen epsuilen@few.vu.nl, daanvandenberg1976@gmail.com, Frank.van.Harmelen@cs.vu.nl VRIJE UNIVERSITEIT AMSTERDAM 2 juli

Nadere informatie

Netwerkdiagram voor een project. AOA: Activities On Arrows - activiteiten op de pijlen.

Netwerkdiagram voor een project. AOA: Activities On Arrows - activiteiten op de pijlen. Netwerkdiagram voor een project. AOA: Activities On Arrows - activiteiten op de pijlen. Opmerking vooraf. Een netwerk is een structuur die is opgebouwd met pijlen en knooppunten. Bij het opstellen van

Nadere informatie

Uitwerking tentamen Algoritmiek 9 juni :00 17:00

Uitwerking tentamen Algoritmiek 9 juni :00 17:00 Uitwerking tentamen Algoritmiek 9 juni 2015 14:00 17:00 1. Clobber a. Toestanden: m x n bord met in elk hokje een O, een X of een -. Hierbij is het aantal O gelijk aan het aantal X of er is hooguit één

Nadere informatie

Recursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40

Recursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40 Recursion Introductie 37 Leerkern 37 5.1 Foundations of recursion 37 5.2 Recursive analysis 37 5.3 Applications of recursion 38 Terugkoppeling 40 Uitwerking van de opgaven 40 Hoofdstuk 5 Recursion I N

Nadere informatie

Algoritmes in ons dagelijks leven. Leve de Wiskunde! 7 April 2017 Jacobien Carstens

Algoritmes in ons dagelijks leven. Leve de Wiskunde! 7 April 2017 Jacobien Carstens Algoritmes in ons dagelijks leven Leve de Wiskunde! 7 April 2017 Jacobien Carstens Wat is een algoritme? Een algoritme is een eindige reeks instructies die vanuit een gegeven begintoestand naar een beoogd

Nadere informatie

Een eenvoudig algoritme om permutaties te genereren

Een eenvoudig algoritme om permutaties te genereren Een eenvoudig algoritme om permutaties te genereren Daniel von Asmuth Inleiding Er zijn in de vakliteratuur verschillende manieren beschreven om alle permutaties van een verzameling te generen. De methoden

Nadere informatie

In dit gedeelte worden drie problemen genoemd die kunnen voorkomen in netwerken.

In dit gedeelte worden drie problemen genoemd die kunnen voorkomen in netwerken. Aantekening Wiskunde Steiner Aantekening door D. 2086 woorden 25 mei 2016 2,1 1 keer beoordeeld Vak Wiskunde Resultaten Vragen bij het wetenschappelijk materiaal 9.1 Prototype example, p. 374-376 In dit

Nadere informatie

Divide & Conquer: Verdeel en Heers vervolg. Algoritmiek

Divide & Conquer: Verdeel en Heers vervolg. Algoritmiek Divide & Conquer: Verdeel en Heers vervolg Algoritmiek Algoritmische technieken Vorige keer: Divide and conquer techniek Aantal toepassingen van de techniek Analyse met Master theorem en substitutie Vandaag:

Nadere informatie

TW2020 Optimalisering

TW2020 Optimalisering TW2020 Optimalisering Hoorcollege 8 Leo van Iersel Technische Universiteit Delft 2 november 2016 Leo van Iersel (TUD) TW2020 Optimalisering 2 november 2016 1 / 28 Minimum Opspannende Boom (Minimum Spanning

Nadere informatie

Tiende college algoritmiek. 14 april Gretige algoritmen

Tiende college algoritmiek. 14 april Gretige algoritmen College 10 Tiende college algoritmiek 1 april 011 Gretige algoritmen 1 Greedy algorithms Greed = hebzucht Voor oplossen van optimalisatieproblemen Oplossing wordt stap voor stap opgebouwd In elke stap

Nadere informatie

Uitgebreide uitwerking tentamen Algoritmiek Dinsdag 5 juni 2007, uur

Uitgebreide uitwerking tentamen Algoritmiek Dinsdag 5 juni 2007, uur Uitgebreide uitwerking tentamen Algoritmiek Dinsdag juni 00, 0.00.00 uur Opgave. a. Een toestand bestaat hier uit een aantal stapels, met op elk van die stapels een aantal munten (hooguit n per stapel).

Nadere informatie

P (X n+1 = j X n = i, X n 1,..., X 0 ) = P (X n+1 = j X n = i). P (X n+1 = j X n = i) MARKOV KETENS. Definitie van Markov keten:

P (X n+1 = j X n = i, X n 1,..., X 0 ) = P (X n+1 = j X n = i). P (X n+1 = j X n = i) MARKOV KETENS. Definitie van Markov keten: Definitie van Markov keten: MARKOV KETENS Een stochastisch proces {X n, n 0} met toestandsruimte S heet een discrete-tijd Markov keten (DTMC) als voor alle i en j in S geldt P (X n+ = j X n = i, X n,...,

Nadere informatie

TW2020 Optimalisering

TW2020 Optimalisering TW2020 Optimalisering Hoorcollege 8 Leo van Iersel Technische Universiteit Delft 28 oktober 2015 Leo van Iersel (TUD) TW2020 Optimalisering 28 oktober 2015 1 / 25 Definitie Een boom is een samenhangende

Nadere informatie

kommagetallen en verhoudingen

kommagetallen en verhoudingen DC 8Breuken, procenten, kommagetallen en verhoudingen 1 Inleiding Dit thema gaat over rekenen en rekendidactiek voor het oudere schoolkind en voor het voortgezet onderwijs. Beroepscontext: als onderwijsassistent

Nadere informatie

Dynamisch Programmeren III. Algoritmiek

Dynamisch Programmeren III. Algoritmiek Dynamisch Programmeren III Vandaag Dynamisch programmeren met wat lastiger voorbeelden: Handelsreiziger Longest common subsequence Optimale zoekbomen Knapsack 2 - DP2 Handelsreiziger Een handelsreiziger

Nadere informatie

Practicum algemeen. 1 Diagrammen maken 2 Lineair verband en evenredig verband 3 Het schrijven van een verslag

Practicum algemeen. 1 Diagrammen maken 2 Lineair verband en evenredig verband 3 Het schrijven van een verslag Practicum algemeen 1 Diagrammen maken 2 Lineair verband en evenredig verband 3 Het schrijven van een verslag 1 Diagrammen maken Onafhankelijke grootheid en afhankelijke grootheid In veel experimenten wordt

Nadere informatie

Algoritmen en programmeren: deel 2 - basis

Algoritmen en programmeren: deel 2 - basis Algoritmen en programmeren: deel 2 - basis Ruud van Damme Creation date: 25 april 2005 Update: 16 november 2006, 9 september 2007 Overzicht 1 Basisbenodigdheden voor alle problemen 2 Alles in stukjes op

Nadere informatie

Tiende college algoritmiek. 13/21 april Gretige Algoritmen Algoritme van Dijkstra

Tiende college algoritmiek. 13/21 april Gretige Algoritmen Algoritme van Dijkstra Algoritmiek 017/Gretige Algoritmen Tiende college algoritmiek 13/1 april 017 Gretige Algoritmen Algoritme van Dijkstra 1 Algoritmiek 017/Gretige Algoritmen Muntenprobleem Gegeven onbeperkt veel munten

Nadere informatie

Graphics. Small Basic graphics 1/6

Graphics. Small Basic graphics 1/6 Small Basic graphics 1/6 Graphics Naast het werken met tekst kan je in Small Basic ook werken met grafische elementen: lijnen, vormen en kleuren. Hierbij gebruik je het grafische venster met de witte achtergrond.

Nadere informatie

Achtste college algoritmiek. 8 april Dynamisch Programmeren

Achtste college algoritmiek. 8 april Dynamisch Programmeren Achtste college algoritmiek 8 april 2016 Dynamisch Programmeren 1 Werkcollege-opgave Dutch Flag Problem Gegeven een array gevuld met R, W, en B. Reorganiseer dit array zo dat van links naar rechts eerst

Nadere informatie

Netwerkstroming. Algoritmiek

Netwerkstroming. Algoritmiek Netwerkstroming Vandaag Netwerkstroming: definitie en toepassing Het rest-netwerk Verbeterende paden Ford-Fulkerson algoritme Minimum Snede Maximum Stroming Stelling Variant: Edmonds-Karp Toepassing: koppelingen

Nadere informatie

Hoofdstuk!7!Kortste!paden!

Hoofdstuk!7!Kortste!paden! oofdstukkortstepaden oofdstukkortstepaden In een gewogen graaf is men soms geïnteresseerd in het kortste pad tussen twee punten: dat is een pad, waarbij de som van de gewichten zo klein mogelijk is..inleiding

Nadere informatie

Heuristieken en benaderingsalgoritmen. Algoritmiek

Heuristieken en benaderingsalgoritmen. Algoritmiek Heuristieken en benaderingsalgoritmen Wat te doen met `moeilijke optimaliseringsproblemen? Voor veel problemen, o.a. optimaliseringsproblemen is geen algoritme bekend dat het probleem voor alle inputs

Nadere informatie

Combinatoriek en rekenregels

Combinatoriek en rekenregels Combinatoriek en rekenregels Les 2: Roosters en ongeordende grepen (deze les sluit aan bij de paragrafen 3 en 4 van Hoofdstuk 1 Combinatoriek en Rekenregels van de Wageningse Methode, http://www.wageningsemethode.nl/methode/het-lesmateriaal/?s=y456v-d)

Nadere informatie

Strategiekaarten. Deze strategiekaarten horen bij de ThiemeMeulenhoff-uitgave (ISBN 978 90 557 4642 2): Rekenen: een hele opgave, deel 2

Strategiekaarten. Deze strategiekaarten horen bij de ThiemeMeulenhoff-uitgave (ISBN 978 90 557 4642 2): Rekenen: een hele opgave, deel 2 Deze strategiekaarten horen bij de ThiemeMeulenhoff-uitgave (ISBN 978 90 557 4642 2): Joep van Vugt Anneke Wösten Handig optellen; tribunesom* Bij optellen van bijna ronde getallen zoals 39, 198, 2993,..

Nadere informatie

D-dag 2014 Vrijeschool Zutphen VO. D -DAG 13 februari 2014: 1+ 1 = 2. (en hoe nu verder?) 1 = 2en hoe nu verder?

D-dag 2014 Vrijeschool Zutphen VO. D -DAG 13 februari 2014: 1+ 1 = 2. (en hoe nu verder?) 1 = 2en hoe nu verder? D -DAG 13 februari 2014: 1+ 1 = 2 (en hoe nu verder?) 1 = 2en hoe nu verder? 1 Inleiding Snel machtsverheffen Stel je voor dat je 7 25 moet uitrekenen. Je weet dat machtsverheffen herhaald vermenigvuldigen

Nadere informatie

Computationele Intelligentie

Computationele Intelligentie Computationele Intelligentie Uitwerking werkcollege Representatie, Ongeïnformeerd zoeken, Heuristisch zoeken 1 lokkenwereld a. De zoekboom die door het dynamische breadth-first search algoritme wordt gegenereerd

Nadere informatie

Grafieken in Word. Soort 1 2 5 10 12 15 20 30 Leven 4,8 4,9 5,1 5,5 5,6 5,8 6,0 6,2 Annuïteiten 4,9 5,1 5,3 5,7 5,8 6,0 6,2 6,5

Grafieken in Word. Soort 1 2 5 10 12 15 20 30 Leven 4,8 4,9 5,1 5,5 5,6 5,8 6,0 6,2 Annuïteiten 4,9 5,1 5,3 5,7 5,8 6,0 6,2 6,5 Les 16 Grafieken in Word In deze les leert u hoe u gegevens weergeeft in de vorm van een grafiek. Ook past u het uiterlijk, de schaal en het type grafiek aan. Een grafiek maken Eén plaatje zegt meer dan

Nadere informatie

Uitgebreide uitwerking Tentamen Complexiteit, mei 2007

Uitgebreide uitwerking Tentamen Complexiteit, mei 2007 Uitgebreide uitwerking Tentamen Complexiteit, mei 007 Opgave. a. Een beslissingsboom beschrijft de werking van het betreffende algoritme (gebaseerd op arrayvergelijkingen) op elke mogelijke invoer. In

Nadere informatie

Uitwerking puzzel 91-7: Je kunt het schudden

Uitwerking puzzel 91-7: Je kunt het schudden Uitwerking puzzel 91-7: Je kunt het schudden Het credit voor deze puzzel gaat naar Frans van Hoeve. Hij stuurde het ons, in een iets andere vorm, met titel Penny-flipping problem. Hij was het tegengekomen

Nadere informatie

Getal en Ruimte wi 1 havo/vwo deel 1 hoofdstuk 4 Didactische analyse door Lennaert van den Brink (1310429)

Getal en Ruimte wi 1 havo/vwo deel 1 hoofdstuk 4 Didactische analyse door Lennaert van den Brink (1310429) Getal en Ruimte wi 1 havo/vwo deel 1 hoofdstuk 4 Didactische analyse door Lennaert van den Brink (1310429) - een lijst met operationele en concrete doelen van de lessenserie, indien mogelijk gerelateerd

Nadere informatie

2. Optellen en aftrekken van gelijknamige breuken

2. Optellen en aftrekken van gelijknamige breuken 1. Wat is een breuk? Een breuk Een breuk is een verhoudingsgetal. Een breuk geeft aan hoe groot een deel is van een geheel. Stel een taart is verdeeld in stukken. Je neemt 2 stukken van de taart. Je hebt

Nadere informatie

Discrete modellen in de toegepaste wiskunde (WISB136) Uitwerkingen proeftentamen.

Discrete modellen in de toegepaste wiskunde (WISB136) Uitwerkingen proeftentamen. Discrete modellen in de toegepaste wiskunde (WISB6) Uitwerkingen proeftentamen. Docent: Rob H. Bisseling april 202. Begin met een matching M = {x y, x y, x 6 y 6 } aangegeven door de vette lijnen. x De

Nadere informatie

Datastructuren Uitwerking jan

Datastructuren Uitwerking jan Datastructuren Uitwerking jan 2015 1 1a. Een abstracte datastructuur is een beschrijving van een datastructuur, met de specificatie van wat er opgeslagen wordt (de data en hun structuur) en welke operaties

Nadere informatie

25 Excel tips. 25 Handige Excel tips die tijd besparen en fouten voorkomen. Ir. Fred Hirdes. Excel-leren.nl.

25 Excel tips. 25 Handige Excel tips die tijd besparen en fouten voorkomen. Ir. Fred Hirdes. Excel-leren.nl. [Geef tekst op] 25 Excel tips 25 Handige Excel tips die tijd besparen en fouten voorkomen Ir. Fred Hirdes Excel-leren.nl info@excel-helpdesk.nl Inhoudsopgave Inhoudsopgave... 1 Inleiding... 2 Tip 1 tm

Nadere informatie

Elfde college algoritmiek. 16 mei Dijkstra, Gretige algoritmen en Branch & Bound

Elfde college algoritmiek. 16 mei Dijkstra, Gretige algoritmen en Branch & Bound Algoritmiek 013/11 College 11 Elfde college algoritmiek 1 mei 013 Dijkstra, Gretige algoritmen en Branch & Bound 1 Algoritmiek 013/11 Voorbeeld -1- A B C D E F G H 9 7 5 A B C D E F G H 0 9 9 7 5 A B C

Nadere informatie

Info-books. Toegepaste Informatica. Deel 20 : Algoritmen en programmeren in Access en Excel (Basis) AL20. Jos Gils Erik Goossens

Info-books. Toegepaste Informatica. Deel 20 : Algoritmen en programmeren in Access en Excel (Basis) AL20. Jos Gils Erik Goossens Info-books AL20 Toegepaste Informatica Deel 20 : Algoritmen en programmeren in Access en Excel (Basis) Jos Gils Erik Goossens Hoofdstuk 6 Lusstructuren of iteraties 6.1 Probleemstelling Het gebeurt dikwijls

Nadere informatie

Zoek de unieke oplossing van het stelsel π = π P waarvoor bovendien geldt dat i S π i = 1.

Zoek de unieke oplossing van het stelsel π = π P waarvoor bovendien geldt dat i S π i = 1. LIMIETGEDRAG VAN REDUCIBELE MARKOV KETEN In het voorgaande hebben we gezien hoe we de limietverdeling van een irreducibele, aperiodieke Markov keten kunnen berekenen: Voorbeeld 1: Zoek de unieke oplossing

Nadere informatie

Computationele Intelligentie

Computationele Intelligentie Computationele Intelligentie Uitwerking werkcollege Representatie, Ongeïnformeerd zoeken, Heuristisch zoeken 1 lokkenwereld a. De zoekboom die door het dynamische breadth-first search algoritme wordt gegenereerd

Nadere informatie

7 Omzetten van Recursieve naar Iteratieve Algoritmen

7 Omzetten van Recursieve naar Iteratieve Algoritmen 7 Omzetten van Recursieve naar Iteratieve Algoritmen Het lijkt mogelijk om elke oplossings-algoritme, die vaak in eerste instantie recursief geformuleerd werd, om te zetten in een iteratieve algoritme

Nadere informatie

Het warmteverlies van het lichaamsoppervlak aan de wordt gegeven door de volgende formule:

Het warmteverlies van het lichaamsoppervlak aan de wordt gegeven door de volgende formule: Opgave 1. (4 punten) Inleiding: Een vleermuis is een warmbloedig zoogdier. Dat wil zeggen dat hij zijn lichaamstemperatuur op een konstante waarde moet zien te houden. Als de omgeving kouder is dan de

Nadere informatie

Checklist Gesprek voeren 2F - handleiding

Checklist Gesprek voeren 2F - handleiding Checklist Gesprek voeren 2F - handleiding Inleiding De checklist Gesprek voeren 2F is ontwikkeld voor leerlingen die een gesprek moeten kunnen voeren op 2F. In deze handleiding wordt toegelicht hoe de

Nadere informatie

10. Mijn eerste programma

10. Mijn eerste programma 10. Mijn eerste programma Een korte handleiding voor het invoeren en editten van programmatekst voor een pseudotaal programma. In dit hoofdstuk wordt beschreven hoe je je allereerste pseudotaal programma

Nadere informatie

Memoriseren: Een getal is deelbaar door 10 als het laatste cijfer een 0 is. Of: Een getal is deelbaar door 10 als het eindigt op 0.

Memoriseren: Een getal is deelbaar door 10 als het laatste cijfer een 0 is. Of: Een getal is deelbaar door 10 als het eindigt op 0. REKENEN VIJFDE KLAS en/of ZESDE KLAS Luc Cielen 1. REGELS VAN DEELBAARHEID. Luc Cielen: Regels van deelbaarheid, grootste gemene deler en kleinste gemeen veelvoud 1 Deelbaarheid door 10, 100, 1000. Door

Nadere informatie

Vijfde college algoritmiek. 2/3 maart Exhaustive search

Vijfde college algoritmiek. 2/3 maart Exhaustive search Vijfde college algoritmiek 2/3 maart 2017 Exhaustive search 1 Voor- en nadelen Brute force: Voordelen: - algemeen toepasbaar - eenvoudig - levert voor een aantal belangrijke problemen (zoeken, patroonherkenning)

Nadere informatie

Uitleg: In de bovenstaande oefening zie je in het eerste blokje een LEES en een SCHRIJF opdracht. Dit is nog lesstof uit het tweede trimester.

Uitleg: In de bovenstaande oefening zie je in het eerste blokje een LEES en een SCHRIJF opdracht. Dit is nog lesstof uit het tweede trimester. In onderstaande oefeningen zijn kleuren gebruikt. Deze dienen aleen om de structuren makkelijker terug te kunnen herkennen. Ze worden niet standaard zo gebruikt. De dunne rood/roze balken zijn ook geen

Nadere informatie

Als een PSD selecties bevat, deelt de lijn van het programma zich op met de verschillende antwoorden op het vraagstuk.

Als een PSD selecties bevat, deelt de lijn van het programma zich op met de verschillende antwoorden op het vraagstuk. HOOFDSTUK 3 3.1 Stapsgewijs programmeren In de vorige hoofdstukken zijn programmeertalen beschreven die imperatief zijn. is het stapsgewijs in code omschrijven wat een programma moet doen, net als een

Nadere informatie

1. Programmeerblokken

1. Programmeerblokken 1. Programmeerblokken In Scratch bouw je het programma op aan de hand van programmeerblokken. Er zijn acht verschillende categorieën om programmeerblokken in terug te vinden. Je vindt op de volgende bladzijden

Nadere informatie

Discrete Wiskunde, College 12. Han Hoogeveen, Utrecht University

Discrete Wiskunde, College 12. Han Hoogeveen, Utrecht University Discrete Wiskunde, College 12 Han Hoogeveen, Utrecht University Dynamische programmering Het basisidee is dat je het probleem stap voor stap oplost Het probleem moet voldoen aan het optimaliteitsprincipe

Nadere informatie

Uitwerking tentamen Analyse van Algoritmen, 29 januari

Uitwerking tentamen Analyse van Algoritmen, 29 januari Uitwerking tentamen Analyse van Algoritmen, 29 januari 2007. (a) De buitenste for-lus kent N = 5 iteraties. Na iedere iteratie ziet de rij getallen er als volgt uit: i rij na i e iteratie 2 5 4 6 2 2 4

Nadere informatie

Uitwerkingen Sum of Us

Uitwerkingen Sum of Us Instant Insanity Uitwerkingen Sum of Us Opgave A: - Opgave B: Voor elk van de vier kubussen kun je een graaf maken die correspondeert met de desbetreffende kubus. Elk van deze grafen bevat drie lijnen.

Nadere informatie

x (n+1) = a.x (n). e -x(n)

x (n+1) = a.x (n). e -x(n) Opgave 1. Inleiding Het Ricker model wordt o.a. gebruikt in de visserijbiologie, voor het modelleren van populaties met dichtheids-afhankelijke juveniele sterfte. Dergelijke sterfte komt bijvoorbeeld voor

Nadere informatie

MACHINES. ... en kralenkettingen. Onderzoeksprogramma Vierkant voor Wiskunde. Wiskundeclubs. Tristan Cranendonk & Joost Langeveld

MACHINES. ... en kralenkettingen. Onderzoeksprogramma Vierkant voor Wiskunde. Wiskundeclubs. Tristan Cranendonk & Joost Langeveld MACHINES... en kralenkettingen. Onderzoeksprogramma Vierkant voor Wiskunde Wiskundeclubs Tristan Cranendonk & Joost Langeveld Kralenketting machines 1 Uitleg van de gebruikte symbolen: In de kantlijn staan

Nadere informatie

Elfde college algoritmiek. 21 april Dijkstra en Branch & Bound

Elfde college algoritmiek. 21 april Dijkstra en Branch & Bound Algoritmiek 011/11 College 11 Elfde college algoritmiek 1 april 011 Dijkstra en Branch & Bound 1 Algoritmiek 011/11 Kortste paden Gegeven een graaf G met gewichten op de takken, en een beginknoop s. We

Nadere informatie

1.0 Voorkennis. Voorbeeld 1: Los op: 6x + 28 = 30 10x.

1.0 Voorkennis. Voorbeeld 1: Los op: 6x + 28 = 30 10x. 1.0 Voorkennis Voorbeeld 1: Los op: 6x + 28 = 30 10x. 6x + 28 = 30 10x +10x +10x 16x + 28 = 30-28 -28 16x = 2 :16 :16 x = 2 1 16 8 Stappenplan: 1) Zorg dat alles met x links van het = teken komt te staan;

Nadere informatie

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms Giso Dal (0752975) Pagina s 5 7 1 Deelverzameling Representatie

Nadere informatie

Handleiding Japanse puzzels

Handleiding Japanse puzzels Handleiding Japanse puzzels versie : 1.0 wijziging : 26-4-2010 Inhoud 1.Japanse puzzel...4 1.1.Speler...4 1.2.Kleur...4 1.3.Groep...4 1.4.Favoriet...4 1.5.Puzzel...4 1.6.Prima...5 1.7.Spel...5 1.8.Stap

Nadere informatie

Rapporten. Labels en Rapporten in Atlantis 1. Atlantis heeft twee manieren om output te genereren: 1. labels 2. rapporten (reports)

Rapporten. Labels en Rapporten in Atlantis 1. Atlantis heeft twee manieren om output te genereren: 1. labels 2. rapporten (reports) Labels en Rapporten in Atlantis 1 Atlantis heeft twee manieren om output te genereren: 1. labels 2. rapporten (reports) Rapporten Een rapport is eigenlijk altijd een tekst bestand, die vorm wordt gegeven

Nadere informatie

8.0 Voorkennis ,93 NIEUW

8.0 Voorkennis ,93 NIEUW 8.0 Voorkennis Voorbeeld: In 2014 waren er 12.500 speciaalzaken. Sinds 2012 is het aantal speciaalzaken afgenomen met 7%. Bereken hoeveel speciaalzaken er in 2012 waren. Aantal 2014 = 0,93 Aantal 2012

Nadere informatie

Tijd is geen goede maatstaf, want is afhankelijk van computer waarop algoritme wordt gedraaid.

Tijd is geen goede maatstaf, want is afhankelijk van computer waarop algoritme wordt gedraaid. Complexiteit of efficiëntie van algoritmen Hoe meet je deze? Tijd is geen goede maatstaf, want is afhankelijk van computer waarop algoritme wordt gedraaid. Een betere maatstaf is het aantal berekeningsstappen

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2012 2013, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele

Nadere informatie

Hoofdstuk 13: Integer Lineair Programmeren

Hoofdstuk 13: Integer Lineair Programmeren Hoofdstuk 13: Integer Lineair Programmeren Vandaag: Wat is Integer Lineair Programmeren (ILP)? Relatie tussen ILP en LP Voorbeeld 1: Minimum Spanning Tree (MST) Voorbeeld 2: Travelling Salesman Problem

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2014 2015, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele

Nadere informatie

Gemiddelde: Het gemiddelde van een rij getallen is de som van al die getallen gedeeld door het aantal getallen.

Gemiddelde: Het gemiddelde van een rij getallen is de som van al die getallen gedeeld door het aantal getallen. Statistiek Modus De waarneming die het meeste voorkomt. voorbeeld 1: De waarnemingen zijn 2, 3, 4, 5, 5, 5, 6, 6, 7 en 8. De waarneming 5 komt het meeste (driemaal) voor, dus de modus is 5. (Kijk maar:

Nadere informatie

3 Wat is een stelsel lineaire vergelijkingen?

3 Wat is een stelsel lineaire vergelijkingen? In deze les bekijken we de situatie waarin er mogelijk meerdere vergelijkingen zijn ( stelsels ) en meerdere variabelen, maar waarin elke vergelijking er relatief eenvoudig uitziet, namelijk lineair is.

Nadere informatie

Algoritmiek. 15 februari Grafen en bomen

Algoritmiek. 15 februari Grafen en bomen Algoritmiek 15 februari 2019 Grafen en bomen 1 Grafen (herhaling) Een graaf G wordt gedefinieerd als een paar (V,E), waarbij V een eindige verzameling is van knopen (vertices) en E een verzameling van

Nadere informatie

Zevende college Algoritmiek. 6 april Verdeel en Heers

Zevende college Algoritmiek. 6 april Verdeel en Heers Zevende college Algoritmiek 6 april 2018 Verdeel en Heers 1 Algoritmiek 2018/Backtracking Programmeeropdracht 2 Puzzel 2: D O N A L D G E R A L D + R O B E R T Elke letter stelt een cijfer voor (0,1,...,9)

Nadere informatie

FLIPIT 5. (a i,j + a j,i )d i d j = d j + 0 = e d. i<j

FLIPIT 5. (a i,j + a j,i )d i d j = d j + 0 = e d. i<j FLIPIT JAAP TOP Een netwerk bestaat uit een eindig aantal punten, waarbij voor elk tweetal ervan gegeven is of er wel of niet een verbinding is tussen deze twee. De punten waarmee een gegeven punt van

Nadere informatie

1. REGELS VAN DEELBAARHEID.

1. REGELS VAN DEELBAARHEID. REKENEN VIJFDE KLAS Luc Cielen 1. REGELS VAN DEELBAARHEID. Deelbaarheid door 10, 100, 1000 10: het laatste cijfer (= cijfer van de eenheden) is 0 100: laatste twee cijfers zijn 0 (cijfers van de eenheden

Nadere informatie

Derde college algoritmiek. 23 februari Toestand-actie-ruimte

Derde college algoritmiek. 23 februari Toestand-actie-ruimte College 3 Derde college algoritmiek 23 februari 2012 Toestand-actie-ruimte 1 BZboom: verwijderen 60 20 80 10 40 70 100 1 15 30 75 5 25 35 100 verwijderen = 60 20 80 10 40 70 1 15 30 75 5 25 35 verwijderen

Nadere informatie

Uitleg. Welkom bij de Beverwedstrijd 2006. Je krijgt 15 vragen, die je in maximaal 45 minuten moet beantwoorden.

Uitleg. Welkom bij de Beverwedstrijd 2006. Je krijgt 15 vragen, die je in maximaal 45 minuten moet beantwoorden. Uitleg Welkom bij de Beverwedstrijd 2006 Je krijgt 15 vragen, die je in maximaal 45 minuten moet beantwoorden. Je krijgt 5 vragen van niveau A, 5 vragen van niveau B en 5 vragen van niveau C. Wij denken

Nadere informatie

V = {a, b, c, d, e} Computernetwerken: de knopen zijn machines in het netwerk, de kanten zijn communicatiekanalen.

V = {a, b, c, d, e} Computernetwerken: de knopen zijn machines in het netwerk, de kanten zijn communicatiekanalen. WIS14 1 14 Grafen 14.1 Grafen Gerichte grafen Voor een verzameling V is een binaire relatie op V een verzameling geordende paren van elementen van V. Voorbeeld: een binaire relatie op N is de relatie KleinerDan,

Nadere informatie

Vergelijkingen en hun oplossingen

Vergelijkingen en hun oplossingen Vergelijkingen en hun oplossingen + 3 = 5 is een voorbeeld van een wiskundige vergelijking: er komt een = teken in voor, en een onbekende of variabele: in dit geval de letter. Alleen als we voor de variabele

Nadere informatie

Toepassingen op matrices - Opgave

Toepassingen op matrices - Opgave Toepassingen op matrices - Opgave Toepassing. Matrices en aantal verbindingen in grafen Op ontdekking. De onderstaande figuur is een voorbeeld van een graaf. Het toont het aantal dagelijkse internationale

Nadere informatie

Minimum Opspannende Bomen. Algoritmiek

Minimum Opspannende Bomen. Algoritmiek Minimum Opspannende Bomen Inhoud Het minimum opspannende bomen probleem Een principe om een minimum opspannende boom te laten groeien Twee greedy algoritmen + tijd en datastructuren: Het algoritme van

Nadere informatie