Universiteit Twente Afdeling Informatica 10 januari 2012 Kwartiel 11/12-2 2e huiswerkserie Algoritmen, Datastructuren en Complexiteit (192140200) De deadline voor het inleveren van deze huiswerkserie is donderdag 26 januari, 9.30 uur. U levert het werk in in het postvakje van uw werkcollegedocent. Bij de opgaven waar om een algoritme wordt gevraagd, geeft u de pseudo-code van uw oplossing en een beknopte maar duidelijke uitleg van de werking. Plagiaat zal streng worden bestraft. Deze opgave zal worden beoordeeld met twee minnen, een min, een voldoende, of een plus. Deze huiswerkserie kan maximaal beloond worden met 0.3 punt extra bij het tentamencijfer, onder de voorwaarden die bij de spelregels worden uitgelegd. Veel succes! 1. Geef een depth-first search algoritme dat kijkt of een gerichte graaf een cykel bevat. De graaf is gegeven als een adjacency list. Wat is de complexiteit van het algoritme? 2. Een connected graaf heet 40 vertices en 70 edges. De edges kunnen gewichten hebben ter waarde 1, 2 of 3. Beschouw de som van de edges van een minimal spanning tree van deze graaf. Welk minimum en welk maximum kan de waarde van deze som aannemen? 3. Een driehoek in een gerichte graaf is een cykel met lengte 3. Geef een algoritme dat bepaalt hoeveel driehoeken een graaf bevat. 4. Je wilt een aantal liedjes op een cd zetten. Neem aan dat je de keus hebt uit 200 liedjes, met tijdsduur ci minuten voor liedje i. Je wilt de cd zoveel mogelijk vullen, dat wil zeggen dat je het liefst zoveel mogelijk minuten muziek op de cd wilt. Binnen deze beperking wil je dan nog graag zoveel mogelijk liedjes op de cd zetten. Ga er van uit dat een cd maximaal 80 minuten kan bevatten. Geef een algoritme, gebaseerd op dynamisch programmeren, dat berekent hoeveel liedjes en hoeveel minuten je maximaal op de cd kunt zetten. 5. Beargumenteer voor de volgende uitspraken of ze waar of niet waar zijn: (a) Het handelsreizigerprobleem is reduceerbaar tot het satisfiability probleem (SAT). 1 (b) Stel P 6= NP, en we hebben een probleem X 6∈ P, en alle problemen in NP zijn reduceerbaar tot X. Dan geldt X ∈ NP. (c) Iedere ongerichte graaf G is in polynomiale tijd te transformeren naar een graaf G0 zodat tussen G en G0 de volgende relatie bestaat: Als G0 met n + 1 kleuren te kleueren is, dan is G met n kleuren te kleuren (zonder buren met dezelfde kleur). (d) Het n-kleur probleem voor grafen is polynomiaal reduceerbaar tot het n + 1kleur probleem. 2