4 svar
151 visningar
exer240 behöver inte mer hjälp
exer240 25
Postad: 8 sep 2021 14:29

Datastrukturer och algoritmer (NY)

Ställs inför detta problem och vet inte hur jag ska gå tillväga för att hitta rätt svar? Skulle någon kunna hjälpa mig?

Smutstvätt 24967 – Moderator
Postad: 8 sep 2021 15:52 Redigerad: 8 sep 2021 15:52

(Givet att vi använder samma algoritm) Är svaret 6n? Min snabba beräkning på en servett ger svaret n+6n+6.

Lindehaven 820 – Lärare
Postad: 8 sep 2021 19:25
Smutstvätt skrev:

(Givet att vi använder samma algoritm) Är svaret 6n? Min snabba beräkning på en servett ger svaret n+6n+6.

Alla bör alltid ha en penna och en servett tillgänglig :-)  Jag får det också till n+6.

Dator A hinner räkna 3×2n på t sekunder så hinner dator B räkna 3×2(n+6) på t sekunder.

Annorlunda uttryckt: 3×2n = 3×2(n+6)/64 = 3×2n×26/64 = 3×2n×26/26 (eftersom 26 = 64)

Smutstvätt 24967 – Moderator
Postad: 8 sep 2021 20:15

Trevligt att jag inte är helt ute och cyklar, @Lindehaven. :)

För den som vill läsa, detta är min uträkning:

Det tar t sekunder för n inputs. Den nya maskinen är 64 gånger snabbare, och algoritmen bör då ha tidskomplexitet Tsnabb(n)=3·2n64=3·2n26. Vi vill nu hitta ett x sådant att T(x)=tT(x)=t, med andra ord vill vi hitta ett x sådant att Tsnabb(x)=Tlångsam(n). Vi vill alltså lösa ekvationen 3·2x26=3·2n

Vi kan börja med att multiplicera båda led med nämnaren i VL, och sedan förkorta gemensamma faktorer. Då får vi 2x=2n·26 (n är något givet värde). Vad blir då x? :)

Lindehaven 820 – Lärare
Postad: 9 sep 2021 13:49

Och trevligt att någon visar detta från rätt "håll", d v s lösa ekvationen med det okända.

Svara
Close