CodeBlanks Logo Icon CodeBlanks

Özet - Amortized

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

solution.py
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

solution.py
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ı

Soru
amortized = total_cost(n) ____ n
Cevap
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

Uzman seviye bölümündeki tüm dersler