Sonuç yazdır
- Algoritmalar kursu
- İleri seviye
- Ders 20/56
- 4 dk
En ucuz maliyeti ekrana yazdırırsın.
Sonucu yazdır
Son adımda print_route() fonksiyonunu ekliyoruz. Bu fonksiyon init_cost ve dp_min_cost'u çağırarak sonucu ekrana yazdırır.
Böylece proje tamamlanır: kullanıcı tek bir fonksiyon çağrısıyla en düşük maliyeti görür. Tüm parçalar bir araya gelir.
Çıktı formatı
print_route() sonucu bir tam sayı olarak yazdırır. Çıktı, başlangıç şehrinden son şehre en düşük maliyeti gösterir.
Bu, projenin kullanıcıya sunduğu tek değerdir. Tüm hesaplama bu sayıda özetlenir.
Uygulama print_route fonksiyonu
print_route() yaz. init_cost()'u çağır, dp_min_cost'a ver, sonucu print ile yazdır. print_route() çağrısı 55 yazsın.
Başlangıç kodu
def init_cities():
# Şehir listesini döndür
return ['A', 'B', 'C', 'D']
def init_cost():
# Maliyet matrisini döndür
return [[0, 10, 25, 60], [0, 0, 20, 50], [0, 0, 0, 30], [0, 0, 0, 0]]
def dp_min_cost(cost):
# En düşük maliyeti bul
n = len(cost)
dp = [0] * n
for i in range(1, n):
best = float('inf')
for j in range(i):
cand = dp[j] + cost[j][i]
if cand < best:
best = cand
dp[i] = best
return dp[n - 1]
def print_route():
# Sonucu yazdırÖrnek çözüm
def init_cities():
# Şehir listesini döndür
return ['A', 'B', 'C', 'D']
def init_cost():
# Maliyet matrisini döndür
return [[0, 10, 25, 60], [0, 0, 20, 50], [0, 0, 0, 30], [0, 0, 0, 0]]
def dp_min_cost(cost):
# En düşük maliyeti bul
n = len(cost)
dp = [0] * n
for i in range(1, n):
best = float('inf')
for j in range(i):
cand = dp[j] + cost[j][i]
if cand < best:
best = cand
dp[i] = best
return dp[n - 1]
def print_route():
# Sonucu yazdır
cost = init_cost()
result = dp_min_cost(cost)
print(result)
print_route()Beklenen çıktı
55
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 print_route ne yapar?
- Şehir listesi döndürür
- Diziyi sıralar
- Matris döndürür
- Maliyeti yazdırır Doğru cevap
Açıklama: print_route maliyeti yazdırır.
2 dp_min_cost çağrısı
cost = init_cost()
result = ____(cost)
cost = init_cost()
result = dp_min_cost(cost)
Açıklama: dp_min_cost doğru.
3 Sonuç yazdır: kavramları eşleştir
| Kavram | Anlamı |
|---|---|
init_cities |
Şehir |
init_cost |
Maliyet |
dp_min_cost |
DP |
print_route |
Yazdır |