Hur lång tid tar det att köra "java Bits 200000", jämfört med "java Bits 100000"?
Blir programmet effektivt om vi lägger till 10 element istället för att göra arrayen dubbelt så stor?
Vilka påståenden är korrekta?
Vilka analyser är korrekta?
Har add
och remove
amorterade tidskomplexiteten O(1) om man halverar arrayen när den blir…
…halvfull? Nej.
…kvartsfull? Ja.
Vilken rad i addFirst
är felaktig?
first.next.prev = node;
.Är implementationen av append
korrekt?
Nej. Korrekt variant:
void append(List<A> ys) {
if (ys.tail != ys.head) {
tail.next = ys.head.next;
tail = ys.tail;
}
}
Hur många consceller innehåller tails [1, 2, 3]
(när uttrycket är fullt evaluerat)?
Vilka datastrukturer ger O(1) enqueue
och dequeue
för FIFO-köer?
Vad är tidskomplexiteten för att köra dequeue xs
n gånger?
Vilken rad i height
är felaktig?
int largestHeight = -1;
.(Man kan också rätta till koden genom att ändra på rad 12, men jag tycker att det leder till ett onödigt komplicerat program.)
Om man implementerar prioritetskö-ADTn med listor, vad blir värstafallstidskomplexiteten för insert
och delete-min
?
insert
: Θ(1), delete-min
: Θ(n).insert
: Θ(n), delete-min
: Θ(1).Vilka träd är binära heapar?
Konstruera en sorteringsalgoritm baserad på binära heapar. Vad är dess värstafallstidskomplexitet, givet att jämförelser tar konstant tid?
Vilka träd är Braunheapar?
Om man kör deleteMin q
, hur ser det nya trädet ut?
Vad är tidskomplexiteten för följande program, där i++
körs n gånger? Använd det logaritmiska kostnadskriteriet.
Hur många kollisioner inträffar?
Vad är tidskomplexiteten för borttagande av n strängar, var och en med n tecken, från en hashtabell som innehåller alla strängarna? Anta att hashfunktionen är perfekt, och linjär i strängarnas storlek.
Vad är bästa- och värstafallstidskomplexiteten för insertionSort
, givet att jämförelser tar konstant tid?
Är mergeSort
stabil?
Är grafer av följande typ täta?
Hur stor plats tar en graf representerad som en grannlista? (Anta att etiketter/vikter tar liten plats.)
Analysera värstafallstidskomplexiteten.
Vad händer om man använder en stack istället för en kö?
Fungerar algoritmen för viktade grafer (om + 1
byts ut mot + vikten av kanten från v till v'
? Testa!
För vilka grafer ger Dijkstras algoritm rätt svar?
Vad är den totala vikten av följande två grafers minsta uppspännande träd?
Vad är värstafallstidskomplexiteten för Kruskals algoritm? (Anta att Edges
är en binär heap och T
en lista. Anta inte att ∣V∣ = O(∣E∣).)
Hur många bakåtkanter innehåller DFS-skogen för följande graf, givet att vi, då vi kan välja mellan flera noder, alltid väljer den lägst numrerade noden?
Hur många starkt sammanhängande komponenter innehåller följande graf?
Ger följande funktion en lista av starkt sammanhängande komponenter som svar?
Vilka träd är binära sökträd?
Vad är värstafallstidskomplexiteten för inorder t
(om t
innehåller n element)?
Vilka träd är AVL-träd?
Vad blir resultatet av att sätta in 5 i följande AVL-träd?
Vad blir resultatet av att sätta in 8 i följande splayträd?
Vad är det förväntade antalet noder med höjd ≥ h (exklusive vaktposten)?
Ge en skarp undre gräns för antalet löv i ett beslutsträd.
Vad är tidskomplexiteten för hinksortering? Anta att bucket
tar konstant tid.
Är heapsort stabil?
Vad är tidskomplexiteten för att splaysortera en lista (med distinkta heltal) som är sorterad?
Vad är tidskomplexiteten för att splaysortera en lista (med distinkta heltal) som är omvänt sorterad?
Vad är värstafallstidskomplexiteten för quicksort om p
alltid är arraysegmentets första element? Anta att partitionering tar linjär tid.