Özet - Amortized
- Algoritmalar kursu
- Uzman seviye
- Ders 4/41
- 4 dk
Amortized maliyeti yazdıran mini görev yaparsın.
Özet - Amortized
Bu grupta amortized analiz yöntemini ve dinamik dizi örneğini öğrendin. Toplam maliyet, n'ye bölününce amortized maliyet elde edilir.
Şimdi tüm parçaları bir araya getiren bir fonksiyon yazacaksın. Bu özet, grubun kavramlarını tek bir kodda birleştirir.
Uygulama amortized_average fonksiyonu
amortized_average(n) yaz. total_cost hazır; total_cost(n) // n'yi döndür. print(amortized_average(4)) ile 1 yazdır.
Başlangıç kodu
def total_cost(n):
# n ekleme için toplam maliyeti hesapla
cost = 0
capacity = 1
size = 0
for i in range(n):
if size == capacity:
cost += size
capacity *= 2
cost += 1
size += 1
return cost
def amortized_average(n):
# Amortized maliyeti hesaplaÖrnek çözüm
def total_cost(n):
# n ekleme için toplam maliyeti hesapla
cost = 0
capacity = 1
size = 0
for i in range(n):
if size == capacity:
cost += size
capacity *= 2
cost += 1
size += 1
return cost
def amortized_average(n):
# Amortized maliyeti hesapla
return total_cost(n) // n
print(amortized_average(4))Beklenen çıktı
1
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Amortized maliyet nasıl bulunur?
- Toplam maliyet / n Doğru cevap
- Toplam maliyet × n
- Toplam maliyet + n
- Toplam maliyet - n
Açıklama: Amortized = toplam maliyet / n.
2 amortized hesabı
amortized = total_cost(n) ____ n
amortized = total_cost(n) / n
Açıklama: / doğru.
3 Özet - Amortized: kavramları eşleştir
| Kavram | Anlamı |
|---|---|
init_array |
Boş dizi |
append_dyn |
Ekle |
total_cost |
Toplam |
amortized |
Ortalama |