• Ei tuloksia

58053-7 Algoritmien suunnittelu ja analyysi (kev¨at 2004) Harjoitus 11 (8.–9. huhtikuuta)

N/A
N/A
Info
Lataa
Protected

Academic year: 2022

Jaa "58053-7 Algoritmien suunnittelu ja analyysi (kev¨at 2004) Harjoitus 11 (8.–9. huhtikuuta)"

Copied!
1
0
0

Kokoteksti

(1)

58053-7 Algoritmien suunnittelu ja analyysi (kev¨ at 2004) Harjoitus 11 (8.–9. huhtikuuta)

1. Suunnittele tehokas algoritmi, joka l¨oyt¨a¨a vieruslistoina esitetyst¨a yhten¨aisest¨a suuntaamatto- masta verkosta solmun, jokaei ole artikulaatiopiste. Algoritmisi tulee olla yksinkertaisempi kuin luennoilla esitetty Low-arvoihin perustuva menetelm¨a artikulaatiopisteiden m¨a¨aritt¨amiseksi, mutta ei v¨altt¨am¨att¨a asymptoottisesti tehokkaampi.

2. M¨a¨arit¨a alla olevan verkon 2-yhten¨aiset komponentit luennolla esitetyll¨a algoritmilla. Oleta, ett¨a solmut ovat vieruslistoissa aakkosj¨arjestyksess¨a ja algoritmi aloittaa verkon tutkimisen solmusta a.

j a

bj

cj dj

ej

fj j g

hj

@

@@

@

@@

@

@@

3. Esit¨a pseudokoodina algoritmi, joka etsii suuntaamattomasta verkosta Eulerin keh¨an tai ilmoit- taa, ett¨a sellaista ei ole. Miten algoritmi muuttuu, jos teht¨av¨an¨a on etsi¨a Eulerin polku?

4. Bin¨a¨arinen De Bruijnin jonoon 2k-bittinen bin¨a¨arijono a1a2. . . a2k, joka syklisesti luettaessa sis¨alt¨a¨a kaikkik-bittiset bin¨a¨arijonot osajonoinaan. Siis esimerkiksi 00010111 on er¨as De Bruij- nin jono, miss¨ak= 3. Luonnostele menetelm¨a, joka annetulla arvollan= 2k tuottaan-bittisen De Bruijnin jonon. Menetelm¨an on oltava sellainen, ett¨a se sopivasti toteutettuna voidaan suo- rittaa ajassaO(n). (Vihje: Tarkastele suunnattua verkkoa Gk, jonka solmut vastaavat kaikkia mahdollisia (k−1)-bittisi¨a bin¨a¨arijonoja ja jossa solmustab1b2. . . bk−1 on symboleilla 0 ja 1 nimetyt suunnatut kaaret solmuihinb2. . . bk−10 ja b2. . . bk−11.)

5. Suunnatun verkonG= (V, E)polkupeite on verkonGyksinkertaisten polkujen joukko, jolle jo- kainen v ∈ V kuuluu t¨asm¨alleen yhteen polkuun. (My¨os pituudeltaan 0 olevat yhden solmun polut sallitaan.) Minimipolkupeite on sellainen polkupeite, jossa on mahdollisimman v¨ah¨an pol- kuja. (Maksimipolkupeitteess¨a on|V|yhden solmun polkua).

Esit¨a, miten suunnatun syklitt¨om¨an verkon G = (V, E) polkupeitteen etsiminen voidaan pa- lauttaa kaksijakoisen verkon maksimipariutuksen etsimiseen. Toimiiko algorimisi suunnatuissa verkoissa, joissa on syklej¨a? Miksi?

(Vihje: Kuinka monta kaarta p yksinkertaisesta polusta koostuva peite sis¨alt¨a¨a? Ent¨a jos osa poluista on kehi¨a?)

Viittaukset

LIITTYVÄT TIEDOSTOT

Repunpakkausongelmassa (Knapsack Problem) on annettu n esinett¨ a, joiden kunkin arvo ja koko tiedet¨ a¨ an, ja teht¨ av¨ an¨ a on pakata esineist¨ a mahdollisimman arvokas

Teht¨ av¨ an¨ a on suorittaa yksiprosessorisella tietokoneella joukko t¨ oit¨ a, jotka ovat kaikki valmiina suoritettavaksi ja joista jokaisen vaatima suoritusaika tunnetaan.. Ty¨

Hahmottele simuloitua j¨ a¨ ahdytyst¨ a k¨ aytt¨ av¨ a ratkaisumenetelm¨ a NP-t¨ aydelliselle solmupeiteon- gelmalle ( Vertex Cover ).. Valitse sopiva kustannusfunktio ja

Osoita, ett¨ a luokkaan perustuva tasapainotus ilman mit¨ a¨ an polkujen tiivist¨ amist¨ a takaa Union- Find-operaatioiden suorituksen ajassa O(log n) per operaatio..

Suunnittele tehokas algoritmi, joka etsii vieruslistoina esitetyn suunnatun ver- kon jonkin alkusolmun, mik¨ ali verkossa sellaisia on.. Miten muuttaisit algoritmia, jos teht¨ av¨ an¨

Osoita, miten seuraavat ongelmat voidaan ratkaista palauttamalla ne tavalliseen maksimi- vuonm¨ a¨ ar¨ a¨ amisongelmaan:.. (a) M¨ a¨ ar¨ a¨ a maksimivuo verkossa, jossa kaarten

Osoita, ett¨ a jos solmupeiteongelman p¨ a¨ at¨ osversio VC (joka siis on NP-t¨ aydellinen) osattaisiin ratkaista polynomisessa ajassa, niin my¨ os vastaava etsint¨

Osoita, miten algoritmista B saadaan aina polynomisessa ajassa toimiva algoritmi, joka ainakin todenn¨ ak¨ oisyydell¨ a 1/2 vastaa oikein ja muuten vastaa.. ”en